是否可以在php文件中使用1行包含多个文件?
所以我要说我的主文件是main.php
,我想要包含ic1.php
,ic2.php
和ic3.php
。
我尝试创建一个新文件include_all.php
,在此文件中放置一个包含所有包含的列表,并将此文件包含在main.php
中。但显然你不能包含包含的内容。
答案 0 :(得分:1)
尝试创建文件名数组,然后循环遍历数组,如:
$fileList = array(
'ic11.php',
'ic2.php',
'ic3.php'
)
$dirPath = '';
foreach($fileList as $fileName)
{
include_once($dirPath.$fileName);
}
如果您的文件位于某个目录中,请在$dirPath
变量中设置正确的路径。
答案 1 :(得分:1)
例如
function include_multiple() {
foreach ( func_get_args() as $arg ) {
include_once($arg);
}
}
或
array_map(function($a){include_once($a.'.php');},['lang','func','db']);
由于"variable scope",第二个文件中的变量将被加载到函数中
那么将无法访问include_multiple
之外的变量
我认为这是最好的方法:
foreach(['func','db','lang'] as $f) include_once($f.'.php');
同时创建一个新文件include_all.php
,在该文件中放置一个包含所有内容的列表,以使脚本执行速度大约快 10x 。为什么?我不知道,您可以自己尝试一下。
答案 2 :(得分:0)
尝试将包含更改为require
。如果您有可能将文件包括两次(可能会出现问题),请使用require_once
。这将给出一个编译时警告,如果它不能包含文件则输出错误,并且应该给你一些关于你可能遇到麻烦的方向。
或者,您可以创建一个包含多个文件的函数(但在某些时候,您需要包含此函数。)
function include_multiple() {
foreach ( func_get_args() as $arg ) {
include_once($arg);
}
}
使用以下方式调用:
include_multiple('ic1.php', 'ic2.php', 'ic3.php');