glob只拉动数组,如果我使用通配符


glob only pulling array if I use wildcard

我试图使用glob()在我的文件夹中找到与模式匹配的图像。有太多的图像需要手动搜索,所以glob()似乎是一个很好的方法。

我似乎不能让glob工作,然而。

我有以下模式的5个图像:diamond_z_classic_397-106,但当我使用glob时:

print_r(glob("diamond_z_classic_397-106.*"));那么这就是返回的array()。当我执行以下命令:pring_r(glob("*.*"));时,它会从目录中提取包括5个匹配项在内的所有内容。

我已经扫描了SO以及http://php.net/manual/en/function.glob.php和http://www.w3schools.com/php/func_filesystem_glob.asp,以找出我错过了什么。

是什么导致了这个,或者我错过了什么。

另外,是否可以使用这样的变量:glob("$pattern.*"); ?

感谢

以下是符合这种模式的5个确切名称:diamond_z_classic_397-106-100-80-100-c-rd-255-255-255.jpg

diamond_z_classic_397-106-100-80-100-c.jpg

diamond_z_classic_397-106-120-90-100-c.jpg

diamond_z_classic_397-106-300-300-100-wm-center_middle-0-ColorCountryAussies-255-255-255-35.jpg

diamond_z_classic_397-106-800-800-100-wm-center_middle-0-ColorCountryAussies-255-255-255-35.jpg

.从图案中删除,即glob("diamond_z_classic_397-106*")

对于glob, *单独匹配零个或多个字符。您正在尝试匹配文件名中不存在的文字.

您可能已经用"."截断了文件名,它从字面上理解它。试试

print_r(glob("diamond_z_classic_397-106*"));

也可以,您可以预先定义一个字符串并将其作为参数传递。

$pattern = "xyz*"
print_r(glob($pattern));