2010-01-26 22 views

回答

7

只需卸下否定的字符集:[^_]成为_

if (!is_dir($file) && preg_match("/^_.*\.(bmp|jpeg|gif|png|jpg)$/i", $file)) 
+0

够简单。感谢您的快速帮助! – 2010-01-26 14:10:44

4

尝试glob()对抗的模式,例如匹配的文件路径名

glob('_*.{jpg,jpeg,gif,png,bmp}', GLOB_BRACE); 

以获得所有以下划线开始并以大括号中给出的任何扩展名结尾的文件。

另外,看看fnmatch()检查一个模式的文件名。

此外,如果您想确保图像是真正的图像,请考虑checking against the MimeType而不是扩展名或附加扩展名。