0

考虑我们有一个 mainstring 和一个 searchstring 。

<?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';
4

2 回答 2

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";
}
于 2012-11-01T11:32:52.233 回答
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);
}
}
于 2012-11-01T11:42:32.253 回答