Php 从字符串中获取最后一个元素的更快方法

Php 从字符串中获取最后一个元素的更快方法,php,Php,我有一个类似于以下内容的字符串: a_b_c_d_1 x_y_z_12 现在,你可以看到最后一个是一个数字。 我想把它提取出来 我曾经遵循的步骤是: 1. explode(string), and store in array 2. find length of array 3. get value at key (arrayLength)-1 但我认为必须有更快更好的方法来做到这一点。所以,问你们这里所有伟大的人 如何实现以下目标?试试这个: substr(strrchr($string,

我有一个类似于以下内容的字符串:

a_b_c_d_1
x_y_z_12
现在,你可以看到最后一个是一个数字。 我想把它提取出来

我曾经遵循的步骤是:

1. explode(string), and store in array
2. find length of array
3. get value at key (arrayLength)-1
但我认为必须有更快更好的方法来做到这一点。所以,问你们这里所有伟大的人

如何实现以下目标?

试试这个:
substr(strrchr($string,'''u'),1)

您可以使用查找另一个字符串中最后出现的字符串。如果您知道至少有一次出现u,那么可以跳过if语句中的内容,但这里有一种故障安全方法:

$last_start = strrpos($string, '_');
if($last_start !== false) {
  $last_field = substr($string, $last_start);
}else{
  $last_field = $string;
}
试一试


您可以使用$v=explode(“\u”,$string);然后是回音端($v);至少为您节省一步;-)你的方法有什么慢的地方?还有,第二种情况下你想要2个还是12个?我非常喜欢@PENDO的解决方案
end(str_split($your_string))