PHP,HTML,Javascript和编写良好实践


10

我意识到我必须为我和我的团队写下有关HTML,JavaScript和PHP编码的约定规范。

在Web开发中,就像在C ++中一样,我绝对是缩进和注释的爱好者。

但是,在我的工作中,我经常会遇到HTML + JavaScript + PHP代码,这突然令人头疼。

我试图使我的代码可读,但是对我来说似乎更好的(缩进和注释)似乎并不使我的队友着迷,所以我想知道在编写“混合”时是否存在最佳或至少共享的良好实践就像今天的网页一样,文档变得越来越复杂。

我知道以下事实:今天的网页代码本质上可能有些复杂,但是我想知道是否存在关于这些方面的良好约定。

Answers:


19

我遵循一些一般规则:

一般

  • 缩进为4个空格。
  • 缩进新级别
  • 缩进级别的注释少于80个字符。如果我处于两个级别(8个空格)中,则表示光标停在大约88个字符处。
  • 使用多行注释。我更喜欢外观,但这是一个主观要点。
  • 现在发表评论,而不是以后再说,如果您不知道发生了什么。
  • 奥尔曼风格的大括号。它更干净,更易读。主观的

的JavaScript

  • 使用图书馆。jQuery特别好。它消除了所有跨浏览器的麻烦。
  • 了解ID是用于特定元素的,类是用于样式的。每页ID的使用次数不得超过一次,并且ID上应附有特定的钩子。使用类进行导航等操作。
  • 从方法入源。将所有代码放入bind调用中很诱人,但是将其放在自己的函数中将增加代码的灵活性。
  • 使用函数而不是eval。这意味着setTimeout(function(){ /* Do something */ }, 1000);代替setTimeout('doSomething', 1000);
  • 与一起使用局部变量var

的HTML

  • 语义标记。使用适当的标签。不要<br />在其中添加空格,调整边距和CSS规则。
  • 所有标签均为小写
  • 所有标签应以结束标签结尾或为自闭合
  • 利用相似的类进行布局。有几个预定义类喜欢hideclearerror,等。
  • 一切(包括脚本)都应放入<head>。担心出现问题时进行优化(四处移动)。
  • 除非特定于页面,否则必须使用外部样式表和JavaScript源。

的PHP

  • 框架很好,我推荐CodeIgniter。
  • 如果您不想使用框架,请尝试使用最新版本的PHP。(即5.3)。
  • 利用includes您的优势。
  • 清除注射或使用准备好的语句。
  • 执行是否检查预想的故障安全值。

    $logged_in = false;
    if(check_user($user))
    {
         $logged_in = true;
         $user = load_user($_SESSION);
    }
    
  • 了解单引号和双引号之间的区别。尽可能使用单引号。
  • 不要回显HTML。

4
优秀名单。对于PHP,我要添加1)使用模板,不要混用php和html(至少在应用程序中)2)不要使用include()作为函数调用3)保持尽可能多的代码不在全局范围内。
GrandmasterB

任何推荐CodeIgniter和jQuery的人都会在我眼中失去完整性。
mefisto 2011年

4
@teresko:您谴责而未给出任何理由或选择。
乔什·K

+1。可以争论和有争议的观点的清单,但是还是一个不错的清单。
haylem 2013年

jQuery消除了所有跨浏览器的麻烦?
詹姆斯·亚当

3

有一些启发性的读物:

  • Zend Framework-php编码样式:如何编写主表php代码的实践列表(PHP文件格式,命名约定,编码样式:数组,字符串,类,方法等)。
  • Google- 代码风格指南:如何编写主表javascript代码的实践列表(规则:Constans,分号,嵌套函数...,编码风格:命名,作用域,字符串,可见性字段等)。

您介意对这些资源的用途进行更多解释吗?为什么建议您在回答所提问题时推荐这些资源?在Stack Exchange上不太欢迎“仅链接的答案”
gna

1
@gnat编辑/正确答案
tomascejka 2013年

2

将3个分开。我处理的最不易维护的代码总是在有一些PHP回显了许多HTML和JavaScript的情况下出现的,可能还有一些SQL可以很好地解决这些问题。

将所有它们分开保存将使代码更易于维护,并且如果您需要在应用程序的不同部分上工作的人员(例如仅需要使用HTML / CSS的设计人员),则可以简化很多事情。


2

编写php Web应用程序最简单的方法当然是将所有内容混在一起。但是,如果您这样做的话,很快就会陷入难以维持的混乱局面。

以下是一些好的做法:

1)将JavaScript放在文档的<head>中(或者更好的是,将其放在head中引用的单独文件中)。了解如何在document.onload事件中绑定事件侦听器,而不是通过HTML分散它们。(更好的方法是,学习使用类似Jquery的框架;它将使您的JavaScript更加漂亮。)

2)查找类似MVC的设计模式。您希望尽可能将用PHP编写的业务逻辑与HTML分开。理想情况下,您最终会使用一种不错的模板语言来组合您的HTML页面。至少,HTML中的PHP应该简洁-主要是调用变量并遍历其他位置构建的列表。

3)注释,缩进...这些只是基本的编程最佳实践。编写HTML时,我倾向于让行长超过80个字符,只是因为该语言太冗长,但这是您应该放任自流的唯一传统做法-如果团队的其他成员都很马虎,他们需要吸吮它并整形。


很好的评论!有一个错字:“将JavaScript放入文档的中”
DL

哎呀 谢谢。(忘了用尖括号编码。愚蠢的我。)
补丁

1
出于性能方面的考虑,JavaScript应该放在页面的末尾。
托比

0

这里有几个花絮:

Javascript:var在初始化变量时使用。

HTML:在文件底部包含脚本,以便最后加载它们。

PHP:拆分文件。不要将所有类都放在一个文件中,就像在普通的C ++开发中一样。尽可能多地进行注释,并写下您的函数/类的目的。


我一直在尝试遵循Google Javascript样式指南:google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml
Fosco 2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.