如何检查explode只包含逗号分隔值...?

时间:2017-02-10 04:56:27

标签: php arrays explode

如何检查php explode仅保留逗号分隔的整数值。

例如我有一个

$str= '10,20,30,40,50,60,70,80,90,100';
$arr = explode(',',$str);

我想检查$ str中的值是否为10,20,30,依此类推。并且不能包含任何字符串和单词。

我基本上填充了这个$ arr的下拉列表,我想检查用户是否用逗号输入整数值,然后如果用户输入任何其他格式,则显示下拉列表。

我也使用is_intis_numeric但它无法解决我的问题。

感谢您的进步。

1 个答案:

答案 0 :(得分:3)

您正在寻找的是ctype_digit

$str= '10,20,30,40,50,60,70,80,90,100';
$arr = explode(',',$str);
foreach($arr as $a){
  if(!ctype_digit($a)){
    //Not an int
  }else{
    //is an int
  }
}

输出: - https://eval.in/734431

参考: - http://php.net/ctype_digit