所以目前我有一个基于属性提取数据的数组,它将数据放在自己的单独数组中。我需要做的是将这3个数组放在一个,所以如果其中一个为null,它将不会给我错误。它应该相当简单,但我无法绕过它。
//CV eqpValue
if (is_array(FullDataResponse->dlr->DesignLayoutRecord)) {
foreach(FullDataResponse->dlr->DesignLayoutRecord as $DesignLayoutRecord_key => $DesignLayoutRecord_value ) {
if ($DesignLayoutRecord_value->cktEqpOptions->CktEqpOptions && is_array($DesignLayoutRecord_value->cktEqpOptions->CktEqpOptions)) {
foreach ($DesignLayoutRecord_value->cktEqpOptions->CktEqpOptions as $cv_obj)
{
if($cv_obj->attribute === 'CDR')
{
$this->cvCDRList[] = array("cdr" => $cv_obj->eqpValue);
}
if($cv_obj->attribute === 'CUSTOMER')
{
$this->cvCustomerList[] = array("customer" => $cv_obj->eqpValue);
}
if($cv_obj->attribute === 'LEASE LINE')
{
$this->cvphoneList[] = array("phoneNumber" => $cv_obj->eqpValue);
}
}
}
}
}
了解它们目前是如何放入单独的数组中的,如cvCDRList,cvCustomerList和cvphoneList?我如何将它们放入一个阵列?谢谢!
答案 0 :(得分:0)
你可以使用array_merge。
<?php
$array1 = array("a12","a12","a13");
$array2 = array("a21","a22","a23");
$array3 = array("a31","a32","a33");
$finalArray = array_merge($array1,$array2,$array3);
foreach( $finalArray as $key => $value ){
echo $key."=>".$value."<br>";
}
?>
您可以创建另一个名为&#34; allAtributes&#34; 。 当你完成填充你的3个数组时,你可以调用另一个类方法,而不是在3个数组之间进行合并。
最后你会得到这样的结果:
allAtributes (array)=>{
["cdr"](array)=> {
['cdrkey1'] = cdrAtt1 ,
['cdrKey2'] = cdrAtt2 ...
},
["customer"](array)=> {
['customerkey1'] = customerAtt1 ,
['customerKey2'] = customerAtt2 ...
},
["phoneNumber"](array)=> {
['phoneNumberkey1'] = phoneNumberAtt1 ,
['phoneNumberKey2'] = phoneNumberAtt2 ...
}
}
答案 1 :(得分:0)
您只需声明一个数组,将其他三个数组与函数array_merge一起添加到循环
中