你喜欢功能还是包含在一个php文件中?

时间:2008-12-19 20:18:21

标签: php function include

你如何管理你的PHP代码?你喜欢在一个php文件中运行还是包含更大的“原始代码”块?

编辑:事实上,我的代码非常讨厌,因为我不使用任何名称空间和类 - 只有函数和包含。我会把课程看成^^。

8 个答案:

答案 0 :(得分:4)

根据需要使用它们。 我使用include作为处理的大代码块,以及“实用程序”函数的函数。我使用的Sometines也包括在功能中......它实际上取决于你喜欢你的代码的干净程度。

认为许多包含意味着更多来自PHP模块的fopen(),而那些可能会减慢整个脚本执行的速度。所以不要尝试放置太多包含。

答案 1 :(得分:3)

如果您正在使用php类,这将自行排序。如果你不是,那么除了你应该学习之外,很难给出一个可接受的答案。我见过的所有PHP代码都是没有类的,但似乎很快变得混乱。

答案 2 :(得分:3)

我同意OOP是要走的路。大型固体代码块是维护的噩梦。肯定不是要走的路。您应该将代码拆分为相互交互的小块,并且可以自行编写。

答案 3 :(得分:1)

当我以前用PHP编程时,我喜欢将常规实用程序函数分组到一个公共文件中以包含在大多数页面中,并将组类分组到专用文件中,以便仅在需要时加载它们。

答案 4 :(得分:0)

我通常使用函数/类作为逻辑并包含用于显示。我最终在控制器中得到了这样的东西......

case 'widgetlist':
  $widgets = $DAO->getWidgets();   //get some query
  include('view/showWidgets.php'); //assume a global $widgets variable
  break;

我发现给HTML / CSS设计器提供包含而不是显示的函数调用更容易。缺点是我依靠全局变量将变量传递给include而不是更安全的参数。

答案 5 :(得分:0)

我在单独的文件中创建类,使用正确的前缀作为命名空间(至少包含它们)。我还将函数作为静态方法放在“静态类”中,用于命名空间效果。

我使用自动加载来包含文件,所以我不必写一百个包含。 将My_Example_Class保存为{lib} /My/Example/Class.php

答案 6 :(得分:0)

我正在处理的事情是每个页面顶部都有一个包含文件,其中包含所有全局函数和数据库设置内容。它按原样工作,但我现在将这些函数移动到单独的文件中,因为所有内容都很大,所以进行任何测试都是不切实际的。

答案 7 :(得分:0)

PHP有一个__autoLoad()魔术函数,可用于拦截类调用。如果该类尚不存在,您可以设置一些简单的代码来查找要包含的正确类代码。然后它将继续正常执行。