$row['solved']= "12|10|3";
$id=10;
$pos = strpos($row['solved'], $id);
if ($pos !== false){
echo "String found!";
exit;
}
echo "String not found!";
为什么这总是返回"未找到字符串"?
答案 0 :(得分:4)
根据PHP docs:
如果
needle
不是字符串,则将其转换为整数并应用为字符的序数值。
您的$id
参数是一个整数,因此用作ordinal value of the character(通常是ASCII值。)在这种情况下,ASCII值10
代表{{1换行字符,因此您正在搜索此\n
,但未找到此特定$row['solved']
值。
要解决此问题,请使用:
$row['solved']