【发布时间】:2011-05-18 07:27:02
【问题描述】:
您可以使用get_include_path() 获取 PHP 中的当前包含路径
我想知道在不发出 PHP 错误的情况下检查文件是否可以包含的轻量级方法是什么。我正在使用 Yii 框架,我想在不发出 PHP 错误的情况下进行导入,但我失败了。
【问题讨论】:
您可以使用get_include_path() 获取 PHP 中的当前包含路径
我想知道在不发出 PHP 错误的情况下检查文件是否可以包含的轻量级方法是什么。我正在使用 Yii 框架,我想在不发出 PHP 错误的情况下进行导入,但我失败了。
【问题讨论】:
从 PHP 5.3.2 开始,您可以使用
会
返回一个包含解析的绝对文件名的字符串,如果失败则返回 FALSE。
var_dump(stream_resolve_include_path("test.php"));
上面的例子会输出类似于:
string(22) "/var/www/html/test.php"
【讨论】:
在 PHP 5.3.2 之前可以拆分路径并循环检查每个路径:
$find = 'file.php'; //The file to find
$paths = explode(PATH_SEPARATOR, get_include_path());
$found = false;
foreach($paths as $p) {
$fullname = $p.DIRECTORY_SEPARATOR.$find;
if(is_file($fullname)) {
$found = $fullname;
break;
}
}
//$found now contains the file to be included, or false if not found
【讨论】:
DIRECTORY_SEPARATOR 与“/”有什么不同? (提示:为此,“/”在 Windows 下工作得很好。)