【发布时间】:2011-10-08 14:17:53
【问题描述】:
正在做类似的事情
_________________________
//index.php
...
require("header.php");
...
_________________________
_________________________
//header.php
printHeader()
function printHeader(){
echo 'something';
...
}
_________________________
考虑过要避免的不良做法?
我个人认为,require()(或require_once() 或include(),这不是重点)调用的执行应该只添加一个指向其他函数/对象的“链接”,而不是单独执行任何东西。换句话说,在我看来,require 的行为方式应该与其他 oo 语言的导入/使用非常相似。
我上面写的例子很简单,但显然我也在写各种“副作用”。定义函数或会话的一些技巧是我在一些包含的文件中经常发现的其他滥用。
【问题讨论】:
-
可能属于 Programmers.SE
-
这是一般设计的问题,不是个人喜好。如果您可以根据个人喜好进行设计,那么这是您的个人喜好。做任何你喜欢的事,把语言当作工具。
-
许多模板引擎依赖于这种副作用。并不意味着这是不好的做法。如果你不喜欢它 - 不要使用它。如果您发现它对您的情况有用,请使用它。
标签: php