日別アーカイブ: 2020年1月15日

[PHP]最後に現れた文字列の後ろを取得する。

タイトルの表現がものすごく悪いんですが、そういうことです。

例えば、「ABCDAEFAGH」という文章があって、最後に現れた「A」の後ろ以降を取得する(今回なら「GH」)、という話です。

$value = "ABCDAEFAGH"; //文字列
$split = "A"; //区切りたい文字
echo end(explode($split,$value)); // GH が出力。

簡単に説明すると、

explodeが特定の文字で区切り、配列で返す。

endが配列の一番最後を返す。(ちなみにphp7.3以降ではarray_key_lastというものが代役として使えるらしい。endがポインタを使用しているので、それで不具合が生じる方向け?)

複数行での取り方なら色々あるが、一行ならこんな感じだろうか。

他にもあればコメントで教えてください。

では〜