看看这段代码:

$GET = array();    
$key = 'one=1';
$rule = explode('=', $key);
/* array_push($GET, $rule[0] => $rule[1]); */

我正在寻找这样的东西:

print_r($GET);
/* output: $GET[one => 1, two => 2, ...] */

有函数来做这个吗?(因为array_push不能这样工作)


当前回答

array_push($GET, $GET['one']=1);

这对我很管用。

其他回答

可以使用联合运算符(+)组合数组,并保留所添加数组的键。例如:

<?php

$arr1 = array('foo' => 'bar');
$arr2 = array('baz' => 'bof');
$arr3 = $arr1 + $arr2;

print_r($arr3);

// prints:
// array(
//   'foo' => 'bar',
//   'baz' => 'bof',
// );

因此,您可以执行$_GET += array('one' => 1);。

关于联合操作符与array_merge使用的更多信息,请参阅http://php.net/manual/en/function.array-merge.php的文档。

用于添加到第一个位置的键和值

$newAarray = [newIndexname => newIndexValue] ;

$yourArray = $newAarray + $yourArray ;
array_push($arr, ['key1' => $value1, 'key2' => value2]);

这工作得很好。 在数组中创建键及其值

我想知道为什么最简单的方法还没有公布:

$arr = ['company' => 'Apple', 'product' => 'iPhone'];
$arr += ['version' => 8];

例子array_merge()……

$array1 = array("color" => "red", 2,4); $ array2 =阵列(“a”、“b”、“颜色”= >“绿色”、“形状”= >“梯形”,4); $result = array_merge($array1, $array2); print_r(结果);

阵列([color] = >绿色,[0]= > 2,[1]= > 4,[2]= >,[3]= > b(形状)= >梯形,[4]= > 4,)