右から左への配列の分解: 最後の区切り文字の分割
PHP では、explode() 関数は、以下に基づいて文字列を分割するためによく使用されます。指定された区切り文字。ただし、特定の区切り文字が最後に出現した位置でのみ文字列を分割する必要がある場合は、あいまいさが生じる可能性があります。
たとえば、次のシナリオを考えてみましょう。
<code class="php">$split_point = ' - '; $string = 'this is my - string - and more';</code>
この文字列に直接explode()を使用すると、次の結果が得られます:
<code class="php">$item[0] = 'this is my'; $item[1] = 'string - and more';</code>
ただし、区切り文字の2番目のインスタンスでのみ分割したいため、これは望ましい出力ではありません。これを実現するには、strrev() 関数を使用して少し異なるアプローチを採用できます。
<code class="php">$split_point = ' - '; $string = 'this is my - string - and more'; $result = array_map('strrev', explode($split_point, strrev($string)));</code>
これがどのように機能するかは次のとおりです。
このアプローチでは、次の出力が得られます。
<code class="php">array ( 0 => 'and more', 1 => 'string', 2 => 'this is my', )</code>
文字列を反転して分割することで、基本的に検索を左から左への検索に変換します。文字列の末尾からの -right 操作により、区切り文字の最後のインスタンスをキャプチャできるようになります。
以上が配列を右から左に分解する方法: PHP の最後の区切り文字で分割するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。