我需要检查特定数字ID是否在给定字符串或逗号分隔值中。
$myVal = 20;
字符串只能包含几个值,以逗号分隔
$str = 20;
// $str = 20, 33, 5;
// $str = 220, 33, 5, 4420;
最初我想过使用strpos,但在上面的例子中可以在22或4420中找到20 ...
答案 0 :(得分:2)
使用in_array并爆炸:
$str = '10, 20, 30, 40';
if(in_array(20, explode(', ', $str))) echo 'In Array';
else echo 'Not In Array';
请注意,我使用的是数字20,因为它等于' 20'值。如果我使用了' 20'它将无法匹配' 20'
答案 1 :(得分:0)
您可以使用explode将字符串拆分为数组。类似的东西:
$parts = explode(',', $str);
然后你可以使用in_array。
如果您正在阅读文件,请查看fgetcsv或str_getcsv。