Php 检查多个图像扩展?
我想通过删除文件扩展名来格式化图像目录。我使用的是Php 检查多个图像扩展?,php,Php,我想通过删除文件扩展名来格式化图像目录。我使用的是basename(),但我只能检查一个后缀。如何使用下面的代码检查.png和.jpeg?这里可以使用正则表达式吗 function sanitize_items($value) { $base = basename(strtolower($value), '.jpg'); $temp = explode('-', $base); return $temp[0]; } foreach ($list[1] as $f) {
basename()
,但我只能检查一个后缀。如何使用下面的代码检查.png
和.jpeg
?这里可以使用正则表达式吗
function sanitize_items($value) {
$base = basename(strtolower($value), '.jpg');
$temp = explode('-', $base);
return $temp[0];
}
foreach ($list[1] as $f) {
$file_sanitized[sanitize_items($f)] = $f;
}
尝试pathinfo()
改用:
让你的生活变得轻松-使用glob():
if(preg#u match('#\(png | jpe?g | gif | bmp)$#i',$filePath)){//Yay}
@user2930185:我更新了答案以包含分解
——但到底什么不起作用?“不工作”到底是什么意思?
$ext = pathinfo($value, PATHINFO_EXTENSION);
return str_replace('.'.$ext, '', $value);
$temp = explode('-', pathinfo($value, PATHINFO_FILENAME));
return strtolower($temp[0]);
$pictures = glob("/your/path/*{jpg,png,gif}", GLOB_BRACE);
$result = array();
foreach ($pictures as $pic) {
$tmp = pathinfo($pic);
$result[] = $tmp['filename'];
}
var_dump($result);