在php中,将一个数组值存储在另一个对象数组中

在php中,将一个数组值存储在另一个对象数组中,php,arrays,object,array-merge,Php,Arrays,Object,Array Merge,我有两个数组,如下所示 $array1 = Array ( [0] => stdClass Object ( [CUSTOMERTRXLINEID] => 2683959 [LINETYPE] => LINE [LINEAMOUNT] => 153000 [TAXAMOUNT] => 0

我有两个数组,如下所示

$array1 =  Array
    (
        [0] => stdClass Object
            (
                [CUSTOMERTRXLINEID] => 2683959
                [LINETYPE] => LINE
                [LINEAMOUNT] => 153000
                [TAXAMOUNT] => 0
                [INVOICEAMOUNT] => 153020
                [CREDITEDAMOUNT] => 
                [ORIGINALLINEAMOUNT] => 153000
                [DESCRIPTION] => Silver Office Package Property#W 101,from 11-02-2018 to 10-02-2019 Area52.5
            )

        [1] => stdClass Object
            (
                [CUSTOMERTRXLINEID] => 2683960
                [LINETYPE] => LINE
                [LINEAMOUNT] => 10
                [TAXAMOUNT] => 0
                [INVOICEAMOUNT] => 153020
                [CREDITEDAMOUNT] => 
                [ORIGINALLINEAMOUNT] => 10
                [DESCRIPTION] => Knowledge Fees (As per Government of Dubai - Law(4) 2005
            )

        [2] => stdClass Object
            (
                [CUSTOMERTRXLINEID] => 2683961
                [LINETYPE] => LINE
                [LINEAMOUNT] => 10
                [TAXAMOUNT] => 0
                [INVOICEAMOUNT] => 153020
                [CREDITEDAMOUNT] => 
                [ORIGINALLINEAMOUNT] => 10
                [DESCRIPTION] => Innovation Fees (As per Government of Dubai - Law(20) 2015)
            )
    )
第二个数组为

$array2 = Array
(
    [0] => 68850.00
    [1] => 10
    [2] => 10
)
我想在第一个数组的每个对象中再创建一个条目,作为
[APPROVEDAMT]=>
,并将第二个数组值存储到其中。我希望生成的数组如下所示

$result_array =  Array
    (
        [0] => stdClass Object
            (
                [CUSTOMERTRXLINEID] => 2683959
                [LINETYPE] => LINE
                [LINEAMOUNT] => 153000
                [TAXAMOUNT] => 0
                [INVOICEAMOUNT] => 153020
                [CREDITEDAMOUNT] => 
                [ORIGINALLINEAMOUNT] => 153000
                [DESCRIPTION] => Silver Office Package Property#W 101,from 11-02-2018 to 10-02-2019 Area52.5
                [APPROVEDAMT] => 68850.00
            )

        [1] => stdClass Object
            (
                [CUSTOMERTRXLINEID] => 2683960
                [LINETYPE] => LINE
                [LINEAMOUNT] => 10
                [TAXAMOUNT] => 0
                [INVOICEAMOUNT] => 153020
                [CREDITEDAMOUNT] => 
                [ORIGINALLINEAMOUNT] => 10
                [DESCRIPTION] => Knowledge Fees (As per Government of Dubai - Law(4) 2005
                [APPROVEDAMT] => 10
            )

        [2] => stdClass Object
            (
                [CUSTOMERTRXLINEID] => 2683961
                [LINETYPE] => LINE
                [LINEAMOUNT] => 10
                [TAXAMOUNT] => 0
                [INVOICEAMOUNT] => 153020
                [CREDITEDAMOUNT] => 
                [ORIGINALLINEAMOUNT] => 10
                [DESCRIPTION] => Innovation Fees (As per Government of Dubai - Law(20) 2015)
                [APPROVEDAMT] => 10
            )
    )
这就是我试过的

$total_line_items=$formData['totallineitem']->value;
        $decode_array = json_decode($formData['invoice']->value);
        $formArray = array($formData);
        $ap_array = [];
        for($x=0; $x<$total_line_items; $x++){
            $ap_array[] = $formArray[0]['approve_amount_'.$x]->value;
        }
        for($i=0; $i<$total_line_items;$i++)
        {
            $data_value=$formData['data'.$i]->value;
            $approved_amt=$formData['approve_amount_'.$i]->value;
            if($data_value)
            {
                foreach($decode_array->LINEDETAILS as $array){
                    $array->APPROVEDAMT = $ap_array[$i];
                    print_r($array->APPROVEDAMT);
                }
            }
        }

$total\u line\u items=$formData['totalineitem']->值;
$decode_array=json_decode($formData['invoice']->value);
$formArray=数组($formData);
$ap_数组=[];
对于($x=0;$xvalue;
}
对于($i=0;$ivalue;
$approved\u amt=$formData['approve\u amount.$i]>值;
如果($data\u值)
{
foreach($decode_array->LINEDETAILS as$array){
$array->APPROVEDAMT=$ap_数组[$i];
打印($array->APPROVEDAMT);
}
}
}
试试这段代码

foreach ($array1 as $key => $value) {
    $array1[$key]['APPROVEDAMT'] = $array2[$key];
}

它将循环第一个数组,并用第二个数组值添加一个新索引。希望这有助于

通常的foreach做这项工作。您尝试了什么?我也尝试了foreach for n all。但是索引和存储没有正确进行。显示您的代码$total_line_items=$formData['totalineitem']->value;$decode\u array=json\u decode($formData['invoice']->value];$formArray=array($formData);$ap_array=[];for($x=0;$xvalue;})for($i=0;$ivalue;$approved_amt=$formData['approve_amount.$i]->value;if($data_value){foreach($decode_array->LINEDETAILS as$array){$array->APPROVEDAMT=$ap_array[$i];print_r($array->APPROVEDAMT)}把它放在问题中,请考虑我的回答,如果这对你有帮助的话。