让 PHP 读取名称中包含引号的目录?
我正在使用 PHP 5 的 scandir($dir) 函数来迭代目录并打印出文件的 xml 列表。 只是,当目录名称中包含单引号时,scandir 不会返回任何项目! 它不会返回 false(如果失败,则会返回 false)或生成警告或错误 - 只是空。 有任何想法吗?
$items = scandir(stripslashes($dir)); //strip slashes in case magic_quotes are on
if($items === false) die("scandir returned failure");
print_r($items)
I am using PHP 5's scandir($dir) function to iterate through a directory and print out an xml list of files. Only, when the directory has a single quote in the name, scandir returns no items! It doesn't return false (as it would if it failed) or generate warnings or errors - just empty. Any ideas?
$items = scandir(stripslashes($dir)); //strip slashes in case magic_quotes are on
if($items === false) die("scandir returned failure");
print_r($items)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我在windows上测试过,效果很好。
尝试
echo $dir;
以确保它是您所期望的。另外,使用
ini_set()
确保您的错误级别足够高:I've tested it on windows and it worked fine.
Try
echo $dir;
to make sure it's what you expect.Also, use
ini_set()
to make sure your error level is high enough:您是否检查过执行脚本的用户是否具有目标目录的读取权限?
Have you checked that the user executing the script has read permissions for the target directory?