大家好,Stackoverflow 大师们, 我对 php 的 glob 函数有问题。
$gallery_full = glob("/var/www/home.com/uplo_1/*.*",GLOB_NOSORT);
print_r($gallery_full);
这行代码没有给我返回任何内容。所有目录都有 chmod 777。在 uplo_1 中有 jpg 和 png 文件。 有人知道如何运行它吗?
最佳答案
编辑:使用我自己的系统路径测试您发布的代码后,没有问题。
检查并确保您的系统路径正确。
使用
phpinfo();
在文件内,查看环境,然后查看DOCUMENT_ROOT。- 如果您没有使用权限/权限
phpinfo()
,然后登录到您的管理面板,和/或联系您的托管提供商以获取您的系统路径(如果是这种情况)。
- 如果您没有使用权限/权限
使用错误报告 http://php.net/manual/en/function.error-reporting.php
"All dirs have chmod 777"
- 这不是最安全的设置。对文件夹使用 755,对文件使用 644。
编辑前的原始答案:
这就是我使用的,如果您的文件夹恰好包含图像以外的文件,那就更好了。
- 旁注:文件夹最好有索引文件,否则有人可能会找到该文件夹并偷看里面的内容,前提是您没有处理好这一点。
确保路径正确。
$imagesDir = '/path/to/files';
$images = glob($imagesDir . '*.{jpg,jpeg,png,gif}', GLOB_BRACE | GLOB_NOSORT);
添加error reporting到文件顶部,这将有助于查找错误。
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
// rest of your code
旁注:显示错误只能在暂存阶段进行,而不能在生产阶段进行。
引用:
关于php glob 函数不返回任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31700268/