PHP包括文件扩展名最佳实践

时间:2009-07-28 15:52:28

标签: php frameworks include

首先,我承认我对这些事情嗤之以鼻。 (糟糕,糟糕,我。)但是,我只是想知道在命名PHP包含文件方面最佳做法是什么。

作为基本情况,我将保留.php作为 final 扩展名(以帮助防止取出未解析的文件),但有助于区分前端文件和包含文件我要么:

  1. 名称​​所有包含文件XXX.inc.php

  2. 将上面的通用(非类)文件和类定义命名为ClassName.class.php(虽然我不是自动加载器的忠实粉丝,但是对于自动加载器的使用可能很方便。)< / p>

  3. 我目前正在考虑选项2,但我只是想知道是否还有其他建议或建议。

2 个答案:

答案 0 :(得分:7)

首先,当你说所有PHP文件都应该有“.php”作为最后的扩展名时,我完全同意你的观点。有两个原因:

  • 如您所述,它有助于防止未解析的文件被提取
  • 它还有助于IDE /编辑器根据文件名进行语法着色:您不必将其配置为将“.inc”视为PHP文件。

但有些情况我不这样做;主要原因是我使用的工具(CMS,Framerwork,库,......)有一些关于文件命名的规则:我倾向于遵循这些规则,即使我不喜欢它们。

例如:

  • 使用Drupal,我使用“.inc”,“。module”,“。install”,...
  • 使用Zend Framework,我将“.phtml”用于视图脚本(HTML + PHP)

对于包含类的文件,我不喜欢“.class.php”:我认为它有点多余;我倾向于使用“MyClassName.php”,并将其用于自动加载。
(顺便说一句,这就是像Zend Framework或Doctrine ORM推荐的Frameworks)

作为旁注:你说你不是自动装弹机的忠实粉丝;为什么? 我尽可能多地使用它们:

  • 通常对性能更好:只加载/解析您真正使用的代码
  • 要编写的代码较少(无require / include

答案 1 :(得分:6)

我将ClassName.class.php用于类文件,将SomeDescription.lib.php用于非类文件。

不是.inc.php的粉丝。似乎在某种程度上错误地描述了文件的可能性,而不是其内容。