使用 glob() 查找名称中带有括号的目录
我有名称中包含括号的目录。 即“dir_123[[email protected]]”
在该目录中有 . tif 文件。
我所做的就是计算 Tif 文件的数量。 在我的 Mac 上,我使用 MAMP 做到了这一点,效果很好:
$anz = count(glob(str_replace("[", "\[", "dir_123[[email protected]]/*.tif")));
在运行 XAMPP 的 Windows 计算机上,由于括号,它无法工作:
$anz = count(glob(str_replace("[", "\[", "dir_123[[email protected]]\\*.tif")));
如何让我的 XAMPP 服务器读取该目录?
I have got directories which contain brackets in the names.
i.e. "dir_123[[email protected]]"
Within that dirs there are .tif files.
What I do is counting the Tif files. On my Mac I did that with MAMP and it worked great:
$anz = count(glob(str_replace("[", "\[", "dir_123[[email protected]]/*.tif")));
On my Windows machine running XAMPP it won't work because of that brackets:
$anz = count(glob(str_replace("[", "\[", "dir_123[[email protected]]\\*.tif")));
How can I get my XAMPP Server to read that directories?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我通过使用以下代码解决了这个问题:
I solved it by using this code instead:
访问 http://unixhelp.ed.ac.uk/CGI/man- cgi?glob+7 用于理解 glob() 的通配符。
所以,正确的转义是:
Visit http://unixhelp.ed.ac.uk/CGI/man-cgi?glob+7 for understanding wildcards for glob().
So, correct escaping is:
您是否尝试过转义所有特殊字符?
前任。
这对我在 Ubuntu 上有效。
如果这不起作用,你可以这样做:
如果你需要递归计数:
这个函数已经过测试,并在我的 Ubuntu 9.04 计算机上使用 php 5.2.6-3ubuntu4.1
希望它对你有用!
//莱纳斯·温内贝克
Have you tried to escape all the special characters?
Ex.
This works for me on Ubuntu.
If that ain't working you can do:
And if you need recursive counting:
This functions was tested and worked on my Ubuntu 9.04 computer with php 5.2.6-3ubuntu4.1
Hope it works for ya!
//Linus Unnebäck