我正在使用以下函数来了解文件是否存在使用 glob
function eSetSplash($eID, $catID) {
$splashscreen = URL_ICONSET . $catID . "/default_splashscreen.png";
if (file_exists(glob(DIRECTORY_PATH_UPLOADS . md5($eID) . 'app/splashscreen_event.*')))
$splashscreen = glob(SITE_URL .'/upload/' . md5($eID) . 'app/splashscreen_event.*');
return $splashscreen;
}
Run Code Online (Sandbox Code Playgroud)
我有两个问题:
<b>Warning</b>: file_exists() expects parameter 1 to be a valid path
Run Code Online (Sandbox Code Playgroud)
而且我不确定执行以下方式是否会实际返回文件路径,或者这只是我的想象:D
$splashscreen = glob(SITE_URL .'/upload/' . md5($eID) . 'app/splashscreen_event.*');
Run Code Online (Sandbox Code Playgroud)
glob 获取与您的模式匹配的所有文件名,并返回一个包含这些名称的数组。
因此file_exists,您可以简单地使用类似的东西,而不是使用(它需要一个文件路径字符串而不是一个数组):
$files = glob(...);
if (count($files) > 0)
Run Code Online (Sandbox Code Playgroud)
查看是否找到任何文件。
如果您确定您的模式将只返回一个文件名或更少,您可以使用$files[0]或reset($files)获取第一个元素(如果满足条件...)。