将逗号分隔的整数分解为intvals?

Pro*_*ica 11 php integer explode

说我有一个像这样的字符串$thestring = "1,2,3,8,2".

如果我explode(',', $thestring),我得到一个字符串数组.如何将它分解为整数数组呢?

biz*_*lop 29

array_map 也可以用:

$s = "1,2,3,8,2";
$ints = array_map('intval', explode(',', $s ));
var_dump( $ints );
Run Code Online (Sandbox Code Playgroud)

输出:

array(5) {
  [0]=>      int(1)
  [1]=>      int(2)
  [2]=>      int(3)
  [3]=>      int(8)
  [4]=>      int(2)
}
Run Code Online (Sandbox Code Playgroud)

示例键盘.


Ser*_*rev 12

使用这样的东西:

$data = explode( ',', $thestring );
array_walk( $data, 'intval' );
Run Code Online (Sandbox Code Playgroud)

http://php.net/manual/en/function.array-walk.php

  • 这不再适用于php 5.3(请参阅http://php.net/manual/en/function.array-walk.php上的评论).而是使用`$ data = array_map('intval',$ data);` (5认同)
  • @AmigableClarkKant,看到链接,可调用是第二个,第一个是数组.但无论如何,是的,这是最大的PHP问题之一.有些功能是下划线,有些是没有.有些人有一个订单,有些则有反向.奇怪. (2认同)