【发布时间】:2018-12-15 18:35:23
【问题描述】:
我是 php 新手,面临 array_push 和 array_merge 之间的一些问题
我在输入 $a(Blank array) 和 $b(Associative array) 中使用了两个数组 有一定的价值)
如果是array_merge
当我使用 array_merge 时,我在两种情况下都得到了相同的结果($c 和 $f) 但总而言之,我使用了一个关联数组,键为“212”,值为“aa” 但在输出中我得到一个键为“0”且值为“aa”的数组
现在
array_push 我得到 2 个不同的输出(int 1 和 int 2),用于两个不同的 2 个相同输入的案例
我试过了
$a=array();
$b= array(212=>"aa");
$c=array_merge($a,$b);
$f=array_merge($b,$a);
$d=array_push($b,$a);
$e=array_push($a,$b);
现在我用这个转储了这些数组
echo '<pre>';
var_dump($c);
var_dump($f);
var_dump($d);
var_dump($e);
我得到每个数组的这些结果
array(1) {
[0]=>
string(2) "aa"
}
array(1) {
[0]=>
string(2) "aa"
}
int(2)
int(1)
【问题讨论】:
-
array_push 修改它的第一个参数并返回新元素的数量。所以你的实验有些缺陷;o)
-
@Jakumi 在 array_merge() 的情况下怎么样。
-
查看答案 1 和/或仔细阅读手册,因为我相信几乎所有内容都已得到解答。很抱歉 rtfm,但真的。
-
array_push 返回数组中元素的新数量。
var_dump($b);在您推送后查看发生了什么。在您第二次推送后同样需要 $a。 -
array_merge 将一个或多个数组的元素合并在一起,以便将一个数组的值附加到前一个数组的末尾。它返回结果数组。 (来自手册。)查看手册时,请检查有关函数返回的说明。
标签: php arrays associative-array array-merge array-push