PHP将字符串转换为数组

Ric*_*nop 13 php arrays

如何将字符串转换为数组?例如,我有这个字符串:

$str = 'abcdef';
Run Code Online (Sandbox Code Playgroud)

我想得到:

array(6) {
  [0]=>
  string(1) "a"
  [1]=>
  string(1) "b"
  [2]=>
  string(1) "c"
  [3]=>
  string(1) "d"
  [4]=>
  string(1) "e"
  [5]=>
  string(1) "f"
}
Run Code Online (Sandbox Code Playgroud)

小智 34

使用str_split http://www.php.net/manual/en/function.str-split.php

  • 你有没有尝试过?它创建了类似`array([0] =>'string')`的东西 (3认同)

sva*_*kiy 6

你可以遍历你的字符串并使用php中的substr返回每个字符或一组字符.下面是一个简单的循环.

$str = 'abcdef';
$arr = Array();

for($i=0;$i<strlen($str);$i++){
    $arr[$i] = substr($str,$i,1);
}

/*
OUTPUT:
$arr[0] = 'a';
$arr[1] = 'b';
$arr[2] = 'c';
$arr[3] = 'd';
$arr[4] = 'e';
$arr[5] = 'f';
*/
Run Code Online (Sandbox Code Playgroud)


小智 6

每个String都是PHP中的一个数组

这么简单

$str = 'abcdef';
echo $str[0].$str[1].$str[2]; // -> abc
Run Code Online (Sandbox Code Playgroud)

  • 这不是真的.您可以将[]与字符串一起使用的事实不会使它成为一个数组.试试`var_dump(is_array("a string"));`你会发现它不是一个数组. (8认同)
  • 这个答案的措辞有误导性 (3认同)