首页  >  文章  >  后端开发  >  如何从右到左分解数组:在 PHP 中按最后一个分隔符进行拆分

如何从右到左分解数组:在 PHP 中按最后一个分隔符进行拆分

Susan Sarandon
Susan Sarandon原创
2024-10-21 15:24:30154浏览

How to Explode Arrays from Right to Left: Splitting on the Last Delimiter in PHP

从右到左爆炸数组:最后一个分隔符分割

在 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>

但是,这不是所需的输出,因为我们只想在分隔符的第二个实例上进行拆分。为了实现这一点,我们可以使用 strrev() 函数采用稍微不同的方法。

<code class="php">$split_point = ' - ';
$string = 'this is my - string - and more';

$result = array_map('strrev', explode($split_point, strrev($string)));</code>

这是如何工作的:

  1. 我们首先使用 strrev( )。
  2. 然后,我们对反转的字符串执行explode() 操作,有效地将其从右向左拆分。
  3. 最后,我们再次将 strrev() 应用于结果的每个元素

这种方法会产生以下输出:

<code class="php">array (
  0 => 'and more',
  1 => 'string',
  2 => 'this is my',
)</code>

通过反转字符串然后拆分,我们基本上将搜索转换为从左到右的搜索-从字符串末尾开始右操作,允许我们捕获分隔符的最后一个实例。

以上是如何从右到左分解数组:在 PHP 中按最后一个分隔符进行拆分的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn