PHP脚本应该在同一个文件中有多个类吗?

时间:2011-07-31 12:11:09

标签: php

我不确定我在哪里听到这个,但我刚才听到/读过:

“小型php应用程序/脚本不推荐使用类,因为需要在每次请求时调用它们。”

但这与在每个请求上调用函数不一样吗?

另外,如何在应用程序/脚本中包含多个类,因为我看到人们有一个包含所有类的简单文件。

是不是有更好的方法将所有类都包含在应用程序/脚本中?

干杯!

3 个答案:

答案 0 :(得分:1)

由于你甚至无法给出评论的来源,我建议完全放弃它,因为它看起来完全无动于衷,因此浪费时间来处理。

这应该能够解决你的实际问题:

  

但这与在每个请求上调用函数不一样吗?

不一样但很可比,对吧。

  

另外,如何在应用程序/脚本中包含多个类,因为我看到人们有一个包含所有类的简单文件。   是不是有更好的方法将所有类包含到应用程序/脚本中?

更好地定义?这种方法有什么问题?一般来说,有很多方法可以解决这个问题,但是它涉及如何在文件系统中组织类,以及如何在文件系统中组织文件。

通常,您需要手动或使用自动加载器来包含文件的类。这就是它。看到右侧的链接,你会发现大量的信息。

答案 1 :(得分:1)

正如yes123所说,这句话没有意义。作为开发人员,您可以决定如何编写项目以及是否应该使用类。

关于如何最好地包括课程,有几种思想流派。就个人而言,我更喜欢为每个类创建一个单独的文件,该文件与该类具有相同的名称,因此名为mySuperClass的类将位于名为mySuperClass.php的文件中,并包含在require_once 'mySuperClass.php';中。

其他人喜欢将他们的类放入包含多个相关类的文件中。只要你决定你想做什么而且你对它有所了解,我认为这不重要。

您可能也希望查看自动加载和类/文件命名约定,例如PEAR。我在大多数项目中使用Zend Framework,因此倾向于坚持使用自动加载和PEAR命名约定。 http://framework.zend.com/manual/en/coding-standard.naming-conventions.html其他人对此有自己的偏好。

PHP 5.3还引入了命名空间,它提供了另一种方法,这里有一个介绍: - http://www.sitepoint.com/php-53-namespaces-basics/ 我并没有真正接受这一点,因为我非常喜欢我现在的系统,但它可能适合你。

答案 2 :(得分:0)

你可以使用__autoload。它将在需要时包括课程

function __autoload($class_name) {
    include 'classes/'.$class_name . '.php';
}