【发布时间】:2012-02-04 17:20:16
【问题描述】:
我使用以下简单代码来包含公共文件夹中的所有文件。
$path=array();
$ds=DIRECTORY_SEPARATOR;
$path['root']=$_SERVER['DOCUMENT_ROOT'];
$path['common']=$path['root'].$ds."common".$ds;
//Include settings
require $path['common'].$ds."settings.php";
//including common php files
foreach (glob($path['common'].$ds."*.php") as $filename) {
if($filename!="settings.php")
require $path['common'].$ds.$filename;
}
如你所见,一开始我使用
require $path['common'].$ds."settings.php";
然后使用foreach 循环包含所有其余文件。
我想知道,是否可以先包含 setting.php 文件,然后在 foreach 循环中包含所有其他文件,而不在上面写行?
【问题讨论】:
-
了解php的自动加载功能。
-
@N.B.为什么我需要在这里自动加载?另外,我认为自动加载类。
-
您将路径前缀添加两次。同样使用
DIRECTORY_SEPARATOR通常是没有意义的,正斜杠适用于所有系统。 -
@mario 毫无意义?如何在没有 DIRECTORY_SEPARATOR 的情况下使用
implode()函数或类似的东西?
标签: php foreach include require