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

标签 php frameworks include

首先,我承认我对这些事情很反感。 (糟糕,糟糕,我。)但是,我只是想知道在命名 PHP 包含文件方面什么被认为是最佳实践。

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

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

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

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

最佳答案

首先,我完全同意你所说的所有 PHP 文件都应该以“.php”作为最终扩展名;有两个原因:

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

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

例如:

  • 对于 Drupal,我使用“.inc”、“.module”、“.install”……
  • 对于 Zend Framework,我使用“.phtml”作为 View 脚本 (HTML+PHP)

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

作为旁注:您说您不是自动加载器的忠实粉丝;为什么 ?
我尽可能多地使用它们:

  • 通常性能更好:只有您真正使用的代码才会被加载/解析
  • 编写的代码更少(无require/include)

关于PHP 包含文件扩展名最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1195037/

相关文章:

PHP fatal error : Class 'Slim' not found in

objective-c - iOS中是否有像Quick Look framework for icons这样的标准库?

c# - 使用c#命令保存js文件

javascript - 我如何设置 Angular JS 服务

rest - 在 Clojure 中开发 RESTful Web 服务的良好起点是什么?

php - 将 .js 文件包含到 php 中时出现问题

Maven:如何解决 Surefire 的 -Dtest 覆盖包括和排除?

php - fatal error : Call to undefined function getRecords() in C:\xampp\htdocs\Employees. php 第 101 行

php - mysql通过外键将主表与另一个表连接

php - wordpress 显示之前未显示的随机帖子