【问题标题】:glob() return in an empty arrayglob() 返回一个空数组
【发布时间】:2013-03-03 20:52:36
【问题描述】:

我试图在一个目录中设置一个包含所有图像文件的数组,我将 index.php 设置在与图像相同的目录中。我使用的代码是

$images = glob("*.jpg, *jpeg, *.png, *.gif");

var_dump($images);

在浏览器中返回 - array(0) { }.. 知道我做错了什么吗?

对不起,如果这是一个如此明显的问题,我对 php 仍然很陌生

【问题讨论】:

  • 您可能必须指定完整路径。
  • 即使图片文件和脚本文件在同一个目录下也要这样吗?
  • 再次查看glob() 手册页。仅仅添加逗号并不是指定替代文件扩展名的有效语法。

标签: php glob


【解决方案1】:

您应该使用 PHP 文档中的 GLOB_BRACE

glob() 函数根据 libc glob() 函数使用的规则搜索所有匹配模式的路径名,该规则类似于普通 shell 使用的规则。

GLOB_BRACE - 扩展 {a,b,c} 以匹配“a”、“b”或“c”

例子:

$directory = __DIR__;
$images = glob("$directory/*.{jpg,jpeg,png,gif}", GLOB_BRACE);
var_dump($images);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-21
    • 2019-08-26
    • 2019-11-12
    • 1970-01-01
    • 2011-10-10
    • 1970-01-01
    • 1970-01-01
    • 2020-02-11
    相关资源
    最近更新 更多