2
下面的语句将加载不以下划线开头的所有图像开始...正则表达式的帮助:匹配任何图像文件用下划线
if (!is_dir($file) && preg_match("/^[^_].*\.(bmp|jpeg|gif|png|jpg)$/i", $file))
我需要,使其只加载图像修改开始时用下划线开始。
下面的语句将加载不以下划线开头的所有图像开始...正则表达式的帮助:匹配任何图像文件用下划线
if (!is_dir($file) && preg_match("/^[^_].*\.(bmp|jpeg|gif|png|jpg)$/i", $file))
我需要,使其只加载图像修改开始时用下划线开始。
只需卸下否定的字符集:[^_]
成为_
:
if (!is_dir($file) && preg_match("/^_.*\.(bmp|jpeg|gif|png|jpg)$/i", $file))
尝试glob()
对抗的模式,例如匹配的文件路径名
glob('_*.{jpg,jpeg,gif,png,bmp}', GLOB_BRACE);
以获得所有以下划线开始并以大括号中给出的任何扩展名结尾的文件。
另外,看看fnmatch()
检查一个模式的文件名。
此外,如果您想确保图像是真正的图像,请考虑checking against the MimeType而不是扩展名或附加扩展名。
够简单。感谢您的快速帮助! – 2010-01-26 14:10:44