需要帮助将数组分配给php的数组元素吗

ztyzrc3y  于 2021-10-10  发布在  Java
关注(0)|答案(1)|浏览(408)

我创建了一个数组,用php将其转换为json文件。但是根据要求,我需要为这个数组元素分配一个数组。它是数组中的一个数组。

"data" => array( // data array

        array(
            "event_name" => "Purchase",
            "event_time" => time(),
            "event_id"   => $order_id,
               "user_data" => array(
                "client_ip_address" => $ip,
                "client_user_agent" => $browser,
                "em" => $email,
                "ph" => $phone,
                "fbc" =>$fbp,
                "fbp" =>$fbc,
                "fn" => $fn,
                "ct" => $ct,
                "st" => $st,
                "zp" => $zp,
                "country" => $country,
                "external_id" => $email
                ),
                "contents" => $items,
                // "id" => $item_ids,
                // "quantity" => count($item_qty),
                // // "delivery_category"=> "home_delivery",
                // "order_id" => $order_id
                // ),
                "custom_data" => array(
                "currency" => "GBP",
                "value"    => $order_total,
                ),
                "action_source" => "website",
                "event_source_url"  => $fullURL,
       ),
    )
    );

但是我的$item数组在回显时是这样的

{
    "id": 814,
    "order_id": 36956,
    "name": "Pearson BTEC Level 7 Certificate in Strategic Management and Leadership (RQF)",
    "product_id": 19555,
    "variation_id": 0,
    "quantity": 2,
    "tax_class": "",
    "subtotal": "1158",
    "subtotal_tax": "0",
    "total": "1158",
    "total_tax": "0",
    "taxes": {
        "total": [],
        "subtotal": []
    },
    "meta_data": []
},
{
    "id": 815,
    "order_id": 36956,
    "name": "Pearson BTEC Level 7 Diploma in Strategic Management and Leadership (RQF)",
    "product_id": 19107,
    "variation_id": 0,
    "quantity": 1,
    "tax_class": "",
    "subtotal": "999",
    "subtotal_tax": "0",
    "total": "999",
    "total_tax": "0",
    "taxes": {
        "total": [],
        "subtotal": []
    },
    "meta_data": []
}

当我分配这个$items并转换成json时,我只能看到数组的IDE

"user_data": {
                "client_ip_address": "2402:d000:a200:a4a8:f06d:40a:cf85:e26d",
                "client_user_agent": "",
                "em": "b99526fedef7fe1da29e27d6f09cb64efew536978778e6cde3d8277d71a04398d1a4",
                "ph": "db80005a39b11372054b7708cac76gsaaww47af6ed3fe4b37b9a8b2be435e2fcff04a7",
                "fbc": "",
                "fbp": "",
                "fn": "83cd072a16ddb3d793c2f5bcd7d0basdree5a04af680279cf6a26fb8dffe57ce3b51a",
                "ct": "17a0730b80e55f4bee9569be3f7e6d0wqw500c5568ecb8d785759d7151ef40f5bbd",
                "st": "e3b0c44298fc1c149afbf4c8996fb9sas2427ae41e4649b934ca495991b7852b855",
                "zp": "ac7bb74de6884ffce919c15fef4193749sdsd4588026c643973946713ac46da540d",
                "country": "c820736841e811c96d30b14eb998feb6bsddc2c9d0764b7731267438dc7d6bb5b59",
                "external_id": "b99526fedef7fe1da29e27d6f09ssscb64536978778e6cde3d8277d71a04398d1a4"
            },
            "contents": [
                {
                    "814": {},
                    "815": {}
                }
            ],

在“centents”元素中,结果应该是这样的

"contents" : [{'id':'ABC123','quantity' :2,'item_price':5.99}, {'id':'XYZ789','quantity':2, 'item_price':9.99, 'delivery_category': 'in_store'}]
zrfyljdw

zrfyljdw1#

我认为问题在于$items实际上是一个“字符串”(json)数组
在将这些$items添加到内容之前,请尝试对其执行json_decode()。
无论如何,当你问一个问题时,试着去掉所有不必要的东西,用最少的代码做一个例子,在这种情况下,你需要大量的阅读材料才能理解这个问题。

相关问题