Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果使用通配符,则仅全局提取数组_Php - Fatal编程技术网

Php 如果使用通配符,则仅全局提取数组

Php 如果使用通配符,则仅全局提取数组,php,Php,我正在尝试使用glob()查找文件夹中与模式匹配的图像。图像太多,无法手动搜索,因此glob()似乎是一个不错的方法 然而,我似乎无法让glob正常工作 我有5张图片,图案如下:diamond_z_classic_397-106但当我使用glob时: print_r(glob(“diamond_z_classic_397-106.*)那么这就是返回的array()。当我这样做时:pring_r(glob(“*”)然后它从包含5个匹配项的目录中提取所有内容 我已经扫描过了,也扫描过了,以找出我遗漏

我正在尝试使用
glob()
查找文件夹中与模式匹配的图像。图像太多,无法手动搜索,因此
glob()
似乎是一个不错的方法

然而,我似乎无法让glob正常工作

我有5张图片,图案如下:
diamond_z_classic_397-106
但当我使用glob时:

print_r(glob(“diamond_z_classic_397-106.*)那么这就是返回的
array()
。当我这样做时:
pring_r(glob(“*”)然后它从包含5个匹配项的目录中提取所有内容

我已经扫描过了,也扫描过了,以找出我遗漏了什么

是什么导致了这一切,或者我错过了什么

另外,是否可以使用如下变量:
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-35.jpg


diamond_z_classic_397-106-800-800-100-wm-center_middle-0-ColorCountryAussies-255-255-255-35.jpg
从模式中删除
,即
全局(“diamond_z_classic_397-106*)


With
*
单独匹配任何字符的零个或多个。您正在尝试匹配文件名中该位置不存在的文本

您可能已将文件名截断为“.”,并按字面意思执行。 试试像这样的东西

print_r(glob("diamond_z_classic_397-106*"));
同样,您可以预先定义字符串并将其作为参数传递

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

空数组意味着没有匹配的模式,当我使用通配符
*
时,该模式会显示出来,尽管你或php是错误的,但我打赌……我在上面的代码中使用php。我唯一要改变的是一个我放了模式,另一个我用了通配符。区分大小写?特殊人物?空间-所有可能都是一个问题!成功了。你知道一种方法来获取数组并将这些文件移动到另一个目录吗?@MDavid如果你只想让glob移动文件,那么这一切都可以做得更简单(更快)
exec('mv diamond_z_classic_397-106*/destination/')