我希望能够修剪一个值匹配这样的数组的字符串
$image_formats = array('.png','.jpg', '.jpeg', '.gif');
$file = 'image1.png';
$file_stripped = trim($file, $image_formats);
想要的结果:'image1'
有功能吗,实现此目标的最佳方法是什么?
答案 0 :(得分:3)
您可以使用str_replace
传递搜索值数组:
$image_formats = array('.png','.jpg', '.jpeg', '.gif');
$file = 'image1.png';
$file_stripped = str_replace($image_formats, '', $file);
答案 1 :(得分:1)
trim()
用于删除单个字符而不是更长字符串的匹配项。
您可以将$image_formats
转换为正则表达式并使用preg_replace()
。
$image_formats = '/\.(png|jpg|jpeg|gif)$/';
$file_stripped = preg_replace($image_formats, '', $file);