从字符串结束的php的Substr?
我有这种数组,我会让它很容易理解从字符串结束的php的Substr?,php,arrays,substr,Php,Arrays,Substr,我有这种数组,我会让它很容易理解 $picture = ( 'artist2-1_thumb.jpg', 'artist2-2.jpg' , 'artist2-3_thumb.jpg', 'artist2-4.jpg', 'artist2-5_thumb.jpg'); 现在我想使用substr来获得只有拇指的新数组,这样就有了新数组 $picturethumbs = ( 'artist2-1
$picture = ( 'artist2-1_thumb.jpg',
'artist2-2.jpg' ,
'artist2-3_thumb.jpg',
'artist2-4.jpg',
'artist2-5_thumb.jpg');
现在我想使用substr来获得只有拇指的新数组,这样就有了新数组
$picturethumbs = ( 'artist2-1_thumb.jpg',
'artist2-3_thumb.jpg',
'artist2-5_thumb.jpg');
是否可以删除某些子项,但从何处开始?您可以使用它来筛选数组,只返回与给定条件匹配的项:
$picturethumbs = array_filter($picture, function($v) {
return strpos($v, '_thumb') !== false;
});
将返回包含字符串\u thumb
的所有数组项。如果您不知道文件的扩展名,或者\u thumb
出现在字符串末尾以外的其他位置(例如my_thumb.gif
仍将匹配),这可能会很有用
将返回最后10个字符匹配的所有数组项\u thumb.jpg
两个(给定示例数组)输出:
给你:
$picturethumbs = array();
foreach ($picture as $val) {
if (substr($val, -10) == '_thumb.jpg') {
$picturethumbs[] = $val;
}
}
@Legionar我已经对它进行了更新,感谢你指出(无论如何,它会这样工作,最好是明确的),但是如果字符串开头的“_thumb”是f.e.”?标题中的“Substr from end of string”,但您的答案也会选择它,如果它不仅在字符串的末尾…@Legionar,那么它会找到它。我假设OP想要得到一个包含
\u thumb
array
0 => string 'artist2-1_thumb.jpg' (length=19)
2 => string 'artist2-3_thumb.jpg' (length=19)
4 => string 'artist2-5_thumb.jpg' (length=19)
$picturethumbs = array();
foreach ($picture as $val) {
if (substr($val, -10) == '_thumb.jpg') {
$picturethumbs[] = $val;
}
}