我应该怎样命名我的PHP类文件? [关闭](What should I name my PHP

2019-07-31 03:43发布

我已经看到用于那些基本上只是类的PHP文件中许多不同的命名方案和扩展。 一些例子:

  1. myClass.php
  2. myClass.class.php
  3. myClass.class

有什么区别,和哪个更好?

Answer 1:

没有超出你所看到的没有什么区别。 与个位.class如果你使用是有帮助的自动加载 ,并没有在您的类文件住的特定目录。 否则,它是完全任意的。 (我用ClassName.class.php 。)



Answer 2:

什么是你的编码标准?

这是常见的大写字母(例如:启动类名class MyClass )。 如果你这样做,那么它遵循你会命名该文件MyClass.php 。 而MyClass.class.php工作过。

MyClass.class是一个坏主意,可能允许,如果他们要求的文件的名字的人查看源代码。 使用.php扩展保证了用户将只能看到输出的文件是由PHP解释器,用于包含只不过是一个文件类,是一个空白页处理之后。

最后,考虑autoload()这样可以节省通话的麻烦require_once以加载类。


更新:在PHP编码标准PSR-4 ,现在有一个半官方的方式来命名的类文件。 以前的建议,命名类文件一样与类.php扩展,仍然有效。 但现在你预计将在您的类的命名空间命名的子目录类文件; PSR-4要求您的所有类包含在由您定义的命名空间。

你会得到什么呢? 自动加载免费! 如果您使用的作曲 ,你可以指定你的类的顶级目录和作曲家会自动加载它们。 没有更多的require语句来加载类。

如果你不想这样做,你不必:PSR-4是一种建议 ,而不是要求。



Answer 3:

我喜欢MyClass.php - 完全相同的名称(包括大写字母)作为类。

但是,如果要在现有项目的工作,你应该使用什么命名方案,该项目。



Answer 4:

除非现有项目或平台上工作,我倾向于对一个文件的约定,如Zend的瘦肉: http://framework.zend.com/manual/en/coding-standard.naming-conventions.html

另外,这意味着你可以像使用PHP代码嗅探器工具,以确保每个人都坚持到了约定。

无论哪种方式,一致性是游戏的名称。 它使人们更方便其他人(包括自己从现在个月),以加快速度上的代码库。



文章来源: What should I name my PHP class file? [closed]