在PHP中包含一组文件

时间:2011-03-27 13:40:09

标签: php model-view-controller

我想要做的是将给定目录中的所有php文件包含到主php文件中,我使用Glob()

将它们加载到数组中 像这样:

// get all php files  
$files = glob('*.php');

但是当我尝试include($files)我收到一个错误,说它不喜欢数组时,我应该使用foreach语句吗?或者有更好的方法吗?

4 个答案:

答案 0 :(得分:4)

foreach (glob("*.php") as $filename) {
    // do stuff
}

答案 1 :(得分:2)

你使用foreach语句,所以foreach $ files为$ file,include($ file)。

话虽如此,从安全的角度来看,我不太确定这是一个好主意,因为你只需要清理目录中的每个文件并包含它 - 如果恶意文件进入你的服务器然后是glob( )在你被包含和解析之前,你无法评估它是否应该存在。

答案 2 :(得分:0)

include()不接受文件数组 - 它只接受一个文件路径作为参数。

这意味着您必须遍历该文件数组,一次包含一个文件

foreach ($files as $file) {
    include $file;
}

答案 3 :(得分:-1)

foreach
 (我需要至少30个字符)