多素子配列を作成するために、単一の要素の配列を作成するためにpreg_match()
で正規表現パターンを使用するか、またはexplode()
を使用するよりも2より良い/より効率的な方法があります。ただ最後の要素を抽出します。
入力:
$str="https://ig-s-b-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-19/17438789_1884899458414605_8605163171642081280_a.jpg";
方法#1からbasename()と連結/
:
echo "/",basename($str);
方法#2からsubstr()の内部strrpos()と/
を検索:
echo substr($str,strrpos($str,"/"));
出力(を使用してeithe R法):
/17438789_1884899458414605_8605163171642081280_a.jpg
注array_map()と上記のいずれかの方法を使用して、あなたは迅速にコードのほんの一ラインとの完全なURLのアレイから濾過アレイを生成することができます。
$array=['https://ig-s-b-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-19/17438789_1884899458414605_8605163171642081280_a.jpg',
'https://ig-s-b-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-19/17438789_111111111111_862222222222222642081280_a.jpg',
'https://ig-s-b-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-19/1741111111111789_1555555555605_812222222081280_a.jpg'];
$array=array_map(function($v){return "/".basename($v);},$array);
var_export($array);
配列出力:これはまた.thanks.iが爆発について考えたことがない作品
array (
0 => '/17438789_1884899458414605_8605163171642081280_a.jpg',
1 => '/17438789_111111111111_862222222222222642081280_a.jpg',
2 => '/1741111111111789_1555555555605_812222222081280_a.jpg',
)
正規表現あなたが探しているが –