我正在处理一个只允许我按月访问数据的API。有时,数据跨度超过2个月,但没有简单的测试来检查。
我已经遍历结果数据以找到我需要的数据。我想我可以在两个月内两次调用API,并在另一个上追加1个月。
我试图弄清楚如何将2个阵列连接在一起。下面是一个例子,我有:
firstMonth = array(0 => object0, 1 => object1, 2 => object2)
secondMonth = array(0 => object3, 1 => object4, 2 => object5)
我需要加入它们,所以我有一个数组,比如:
bothMonths = array(0 => object 0, 1 => object1, 2 => object2, 3 => object3, 4 => object4, 5 => object5)
那么,我怎样才能加入我的2个阵列?
答案 0 :(得分:3)
您可以使用array_merge()
来实现此目的。当你有不同的索引时使用+。
答案 1 :(得分:2)
如果输入数组具有相同的字符串键,则该键的后一个值将覆盖前一个键。但是,如果数组包含数字键,则后面的值不会覆盖原始值,但会附加。
答案 2 :(得分:0)
试试这个:
function zip() {
$args = func_get_args();
$zipped = array();
$n = count($args);
for ($i=0; $i<$n; ++$i) {
reset($args[$i]);
}
while ($n) {
$tmp = array();
for ($i=0; $i<$n; ++$i) {
if (key($args[$i]) === null) {
break 2;
}
$tmp[] = current($args[$i]);
next($args[$i]);
}
$zipped[] = $tmp;
}
return $zipped;
}
$bothMonths = zip($firstMonth, $secondMonth);
print_r($bothMonths);
类似于ruby / python / haskell / ... zip函数,这就是你想要的
答案 3 :(得分:-2)
使用PHP的array_merge
函数:
$bothMonths = array_merge($firstMonth, $secondMonth);