if/else 在 php 的 foreach 循环中不起作用

我是 PHP 新手,我不会在 foreach 循环中使用 if/else 语句遍历所有记录。


$string = "a, b, 1, 2, 3, c, d, e";


$string = explode(' , ', $string);


foreach ($string as $value) {



    if(is_int($value)){


        echo 'Int ' . $value . '<br>';


    }else{



        echo 'Char ' . $value . '<br>';

    }



}

我从上面的代码得到这个结果,


输出

字符 a

字符 b

字符 1, 2, 3, c, d, e


我期待以下结果,所以请帮助我弄清楚。谢谢


char a

char b

int 1

int 2

int 3

char c

char d

char e


慕哥9229398
浏览 273回答 2
2回答

撒科打诨

您可以通过' , '注意逗号前后的空格来分解它这是你应该怎么做:&nbsp;$string = explode(',', $string);

白衣染霜花

如果您有一个字符串并使用爆炸,则每个元素仍然是一个字符串。表示它是“1”。而且 is_int("1") 是假的。你需要 is_numeric()
打开App,查看更多内容
随时随地看视频慕课网APP