在php中,可以利用array_combine()函数来将索引数组转成关联数组,语法为“array_combine(包含键名的数组,索引数组)”;其中,键名数组和索引数组中的元素个数必须要一致,这才能让键名和索引数组中的元素值一一对应。

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

在php中,可以利用array_combine()函数来将索引数组转成关联数组。

示例:

有这样一个索引数组:

array (size=4)
  0 => string 'red' (length=3)
  1 => string 'green' (length=5)
  2 => string 'blue' (length=4)
  3 => string 'yellow' (length=6)

想要将其转为关联数组:

array (size=4)
  'a' => string 'red' (length=3)
  'b' => string 'green' (length=5)
  'c' => string 'blue' (length=4)
  'd' => string 'yellow' (length=6)

我们可以利用array_combine()函数和一个包含“a”、“b”、“c”、“d”元素的数组:

array("a","b","c","d");

实现代码:

<?php
header("Content-type:text/html;charset=utf-8");
$keys=array("a","b","c","d");
$values=array("red","green","blue","yellow");
var_dump($keys);
var_dump($values);
echo "使用array_combine()合并数组后:";
var_dump(array_combine($keys,$values));
?>

1.png

说明:

array_combine($keys,$values)函数通过合并两个数组的方式创建了一个新数组,其中$keys数组中的元素作为了新数组的键名,$values数组的元素为作为了新数组的键值。

但需要注意的是,使用array_combine()函数创建数组时,$keys数组和$values数组中的元素个数必须要一致,这才能让键名和键值一一对应,否则就会报错并返回 FALSE。

$keys数组不可为多维数组,否则也会报错;但$values数组可以为多维数组。


php怎么将索引数组转成关联数组