PHP在数组中的特定字符串后获取字符串

时间:2015-05-16 04:30:53

标签: php arrays string

我有一个类似aa/bb/cc/dd/55/44的字符串。现在我使用explode函数将其转换为数组。

explode("/","aa/bb/cc/dd/55/44");

在这里,我想总是在dd之后得到字符串。字符串是动态的,即dd可以进入任何位置,但在dd之后我想立即获得字符串,即55。如何使用PHP实现它?

4 个答案:

答案 0 :(得分:2)

<?php
   $str_arr = explode("dd/","aa/bb/cc/dd/55/44");
   $str = end($str_arr);
?>

在$ str中你会得到'dd /'之后的字符串部分,即'55 / 44'。希望它有所帮助。

答案 1 :(得分:1)

简单foreach()

$myarray = explode("/","aa/bb/cc/dd/55/44");

foreach ($myarray as $k => $v) {
      if ($v === "dd") {
          $myvalue = $myarray[$k+1];
          //break out once value is found as 
          //author requested only first result
          break;
      }
}

答案 2 :(得分:1)

然而,为了记录,如果你想安全地捕捉所有你的模式的出现(不仅仅是最后一场比赛),{{ 1}}和下一个dd/,然后您可以使用以下内容:

/

答案 3 :(得分:0)

我的方法:

/**
 * Return string after needle if it exists.
 *
 * @param string $str
 * @param mixed $needle
 * @return string
 */
function str_after($str, $needle)
{
    $pos = strpos($str, $needle);

    return ($pos !== false) ? substr($str, $pos + strlen($needle)) : $str;
}