是否有一个PHP函数来查找中间字符串


is there a PHP function to find a middle string?

好吧,请

举个例子

$email  = 'name@example.com';
$domain = strstr($email, '@');
echo $domain; // prints @example.com
$user = strstr($email, '@', true); // As of PHP 5.3.0
echo $user; // prints name

正如它所说,它使用 true 打印"@"之前的内容,并使用 blank 打印 @ 之后的内容

im正在寻找一个函数来打印@本身,给它2个字符串并抓取它们之间的内容

喜欢这个

  $string= 'someXthing';
  $tograb = phpfunction("some","thing");
  echo $tograb; // should be printing X

^这行不通,我只是写它来解释

我不知道有

哪个本机函数可以做到这一点,但您可以使用正则表达式

$string= 'someXthing';
preg_match("/some(.*)thing/",$string,$matches);
var_dump($matches[1]);

阅读更多 关于 preg_match

来自互联网

function GetBetween($content,$start,$end){
    $r = explode($start, $content);
    if (isset($r[1])){
        $r = explode($end, $r[1]);
        return $r[0];
    }
    return '';
}

原始代码

对于您所说的示例,您可以使用 strpos 像这样打印 X:

$string = 'someXthing';
$start = strpos($string, "some") + strlen("some");
$end = strpos($string, "thing", $start);
$tograb = substr($string, $start, $end - $start);
echo $tograb;

和 X 将被打印。