如何从mainstring获取strpos()匹配的字符串

时间:2012-11-01 11:25:34

标签: php string strpos

考虑我们有一个mainstring和一个搜索字符串。

<?php   
$mystring = ',1,123,167,778,456';
$findme   = '123';
$pos = strpos($mystring, $findme);
if ($pos === false) {
echo "The string '$findme' was not found in the string '$mystring'";
} else {
echo "The string '$findme' was found in theenter code here string '$mystring'";
echo " and exists at position $pos";
}
?>

如果我们找到了123然后它工作正常并且找到了答案字符串,但是如果我们给$findme值'12'那么它也给出答案肯定。 我想如果strpos()匹配一个字符串,那么这个匹配字符串将保存在一个变量中,如。

strpos(',1,123,167,778,456','12');

然后123存储在变量

$string_from_main_string = '123';

2 个答案:

答案 0 :(得分:1)

最好将explodein_array用于此类任务

$mystring = ',1,123,167,778,456';
$findme   = '123';

$arr = explode(',',$mystring);
if(in_array($findme,$arr)){
  echo "Found";
}
else{
  echo "Not Found";
}

答案 1 :(得分:0)

我认为,如果值的strpos为正但在字符串中不完全可用,则您希望将值附加到原始字符串:

$a = "1,123,456,746";
$a_arr = explode(",", $a);
$findme = "123";
if (strlen(strpos($a, $findme)) > 0){
if(in_array($findme, $a_arr)){


}else{
    $a .= ",".$findme;
    array_push($a_arr, $findme);
}
}