在 php 中出现不止一次的字符之前获取 STRING 字符值

Getting STRING Characters value before a character occuring more than once in php

我想从变量中获取最后一个单词的值.....

如果变量的内容为 ,book,farm,chop,cook

我想在最后一个 php

之后单独获取 cook 的值
$valt = ",book,farm,chop,cook";

或者在遇到 ',' 之前从右侧获取值... 谢谢

使用explode()从字符串转换为数组并使用end()

   <?php
   $arr = ",book,farm,chop,cook";
   $a = explode(',', $arr);
   print_r(end($a));
$valt = ",book,farm,chop,cook";
$r = explode(",",$valt);
$a = array_key_last($r);
print_r($a);

带有 strrpos 的可选解决方案,它找到 最后 次出现 , 的位置。之后,您可以使用 substr 获取从 next 位置开始的子字符串:

$str = ",book,farm,chop,cook";
print_r(substr($str, 1 + strrpos($str, ',')));

使用strrchr() and a ltrim()整理你可以这样做

$valt = ",book,farm,chop,cook";
echo ltrim(strrchr($valt,','),',');

结果

cook