简体   繁体   English

从数据库中将多个值插入到多维 PHP 数组中

[英]Insert multiple value into multidimensional PHP array from database

===INTENDED OUTPUT===
Array
(
    [INV101] => Array
        (
            [0] => Array
                (
                    [Prod_Code] => ABC123
                    [Serial_No] => 1
                )

            [1] => Array
                (
                    [Prod_Code] => XYZ909
                    [Serial_No] => 2
                )

            [2] => Array
                (
                    [Prod_Code] => LMN456
                    [Serial_No] => 1
                )

        )

    [INV201] => Array
        (
            [0] => Array
                (
                    [Prod_Code] => POL356
                    [Serial_No] => 3
                )

            [1] => Array
                (
                    [Prod_Code] => QWE356
                    [Serial_No] => 4
                )

            [2] => Array
                (
                    [Prod_Code] => KIL765
                    [Serial_No] => 2
                )

        )

)
===INTENDED OUTPUT===
===BROWSER OUTPUT FOR $invlist===
Array
(
    [0] => INV123
    [1] => INV456
)
===BROWSER OUTPUT FOR $invlist===
===PHP CODE===
for ($n = 0; $n < count($invlist); $n++) {  
    $query = "SELECT INV_NO, PROD_CODE, SERIAL_NO
    WHERE INV_NO='".$invlist[$n]."' ";
    $result = $conn->query($query);
    while($results = $result->fetch(PDO::FETCH_ASSOC)) {
        //$invData[] = $results;
        $invData[$results["INV_NO"]] = array(array("PRODUCT_CODE"=>$results["PROD_CODE"], "SERIAL_NO"=>$results["SERIAL_NO"]));
    }       
}
===PHP CODE===

I'm trying to insert value from database into the list.我正在尝试将数据库中的值插入列表中。 So far I manage to do insert it into the $invData array, but the problem is there are several product code under an invoice, but it only insert 1. How do I insert all the related product code into it?到目前为止,我设法将它插入到 $invData 数组中,但问题是发票下有多个产品代码,但它只插入了 1 个。如何将所有相关的产品代码插入其中? Do I need for loop or something inside the array?我需要循环或数组内的东西吗?

===INTENDED OUTPUT===
Array
(
    [INV101] => Array
        (
            [0] => Array
                (
                    [Prod_Code] => ABC123
                    [Serial_No] => 1
                )

            [1] => Array
                (
                    [Prod_Code] => XYZ909
                    [Serial_No] => 2
                )

            [2] => Array
                (
                    [Prod_Code] => LMN456
                    [Serial_No] => 1
                )

        )

    [INV201] => Array
        (
            [0] => Array
                (
                    [Prod_Code] => POL356
                    [Serial_No] => 3
                )

            [1] => Array
                (
                    [Prod_Code] => QWE356
                    [Serial_No] => 4
                )

            [2] => Array
                (
                    [Prod_Code] => KIL765
                    [Serial_No] => 2
                )

        )

)
===INTENDED OUTPUT===
===BROWSER OUTPUT FOR $invlist===
Array
(
    [0] => INV123
    [1] => INV456
)
===BROWSER OUTPUT FOR $invlist===
===PHP CODE===
for ($n = 0; $n < count($invlist); $n++) {  
    $query = "SELECT INV_NO, PROD_CODE, SERIAL_NO
    WHERE INV_NO='".$invlist[$n]."' ";
    $result = $conn->query($query);
    while($results = $result->fetch(PDO::FETCH_ASSOC)) {
        //$invData[] = $results;
        $invData[$results["INV_NO"]] = array(array("PRODUCT_CODE"=>$results["PROD_CODE"], "SERIAL_NO"=>$results["SERIAL_NO"]));
    }       
}
===PHP CODE===

I'm trying to insert value from database into the list.我正在尝试将数据库中的值插入列表中。 So far I manage to do insert it into the $invData array, but the problem is there are several product code under an invoice, but it only insert 1. How do I insert all the related product code into it?到目前为止,我设法将它插入到 $invData 数组中,但问题是发票下有多个产品代码,但它只插入了 1 个。如何将所有相关的产品代码插入其中? Do I need for loop or something inside the array?我需要循环或数组内的东西吗?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM