2

我有一个逗号分隔的字符串,我分解成一个数组。如果数组的长度未知,并且我想将它变成一个键值对数组,其中数组中的每个元素都具有相同的键,我该怎么做?我假设我必须使用 array_combine?谁能给我一个使用下面数组的例子?:

例如:

array([0]=>zebra, [1]=>cow, [2]=>dog, [3]=>monkey, [4]=>ape)

进入:

array([animal]=>zebra, [animal]=>cow, [animal]=>dog, [animal]=>monkey, [animal]=>ape)
4

3 回答 3

5

您不能对数组中的每个元素使用相同的键。您需要一个唯一标识符来访问数组的值。当你使用animal for all时,应该使用什么值?您可以做的是制作一个二维数组,在数组中包含一个数组:

array(
    [animals] => array(
        [0]=>zebra, [1]=>cow, [2]=>dog, [3]=>monkey, [4]=>ape
    )
) 

这可以与$array['animals'][0]

但是您仍然需要数字或唯一标识符来访问数组的值。

于 2012-07-12T06:14:18.527 回答
3

像这样的东西:

$string = 'zebra,cow,dog,monkey,ape';
$array = explode(',', $string);

$arrayReturn['animals'] = $array;

print_r($arrayReturn);
于 2012-07-12T06:15:58.563 回答
0

你不能对所有的值都有相同的键,但你可以这样做

假设你的字符串是

$a = 'dog,ant,rabbit,lion';
$ar = explode(',',$a);
$yourArray = array();
foreach($ar as $animals){
   $yourArray['animals']=$animals;
}

现在不管你的字符串有多长,你都会有你的数组

$yourArray['animals'][0]='dog'

$yourArray['animals'][1]='ant'

....... 很快 ......

于 2012-07-12T06:24:43.060 回答