PHP获取一个字符串中间一部分字符的方法

时间:2022-05-12 07:58:20

这是一个获取字符串中两个子串之间的子串,如从字符串www.zzvips.com中获取coderbolg子串,就让这个PHP函数来实现吧,代码如下:

复制代码 代码如下:


function get_between($input, $start, $end) {

 

  $substr = substr($input, strlen($start)+strpos($input, $start),

 (strlen($input) - strpos($input, $end))*(-1));

  return $substr;

}

$string = "www.zzvips.com";

$start = "www.";

$end = ".com";

echo get_between($string, $start, $end);  // output:coderbolg


不过这个函数有个局限,就是$start子串和$end子串在整个串中只能出现一次。请看下面的例子:

复制代码 代码如下:


$string = "http://www.zzvips.com/";

 

$start = "http://";

$end = "/";


很明显我想获取这个标准URL的域名部分,由于$end子串在整个串中不是唯一的,所以就会出现问题,请使用时务必注意!