值是否等于多个多维数组


Are values equal with multiple multidimenional arrays

我有两个数组

array_1是多维的,但我需要的值的位置是

array_1['id']

array_2也是多维的,位置在里面更远的地方。

array_2['data']['id']

现在,仅当 (===) 这两个 ID 相同时,我才尝试执行我的代码。

更多信息是,这是 2 个 API 的组合,但 API 的代码工作正常,因为如果我尝试从两个 API 获取信息,它会向我显示。

法典:

$orders = $apiSeo->orders->get();
$parcels = $apiSend->parcels->get();
foreach($orders as $id => $order){
    if(($orders[$id]['paymentStatus'] == 'paid') || ($orders[$id]['paymentIsPost'] == true)){
        echo '<pre>';
        var_export($orders[$id]['id']);
        var_export($orders[$id]['lastname']);
        var_export($orders[$id]['paymentStatus']);
        var_export($orders[$id]['paymentIsPost']);
        echo '</pre>';
    }   
}

我尝试添加什么:

foreach($parcels as $id2 => $parcel){
    if($orders[$id]['id'] === $parcels[$id2]['data']['order_id']){//}
}

也没有成功array_key_exists或in_array。

添加这些代码时,我带有 var_export 或 var_dump 的输出一无是处。 当我报告错误时也没有错误。所以我不知道错误或错误编码在哪里。

print_r请求$parcels数组

Array
(
    [0] => Array
        (
            [id] => 1440143
            [address] => xx
           [address_divided] => Array
            (
                [street] => xx
                [house_number] => 8
            )
        [city] => xx
        [company_name] => 
        [country] => Array
            (
                [iso_2] => NL
                [iso_3] => NLD
                [name] => Netherlands
            )
        [data] => Array
            (
                **[seoshop_order_id] => 15802836** HERE!
            )
        [date_created] => 03-03-2016 07:41:39
        [email] => xx@live.nl
        [name] => xx
        [postal_code] => xx
        [reference] => 0
        [shipment] => Array
            (
                [id] => 10
                [name] => DHL Complete with signature
            )
        [status] => Array
            (
                [id] => 1000
                [message] => Ready to send
                [history] => 
            )
        [telephone] => xx
        [tracking_number] => JVGL0
        [label] => Array
            (
                [normal_printer] => Array
                    (
                        [0] => https://panel.sendcloud.nl/api/v2/labels/normal_printer/1440143?start_from=0
                        [1] => https://panel.sendcloud.nl/api/v2/labels/normal_printer/1440143?start_from=1
                        [2] => https://panel.sendcloud.nl/api/v2/labels/normal_printer/1440143?start_from=2
                        [3] => https://panel.sendcloud.nl/api/v2/labels/normal_printer/1440143?start_from=3
                    )
                [label_printer] => h1
            )
        [order_number] => ORD03
        [carrier] => Array
            (
                [code] => dhl
            )
        [tracking_url] => xx
    )

print_r请求$orders数组到大以复制和放置所有数组,也没有必要,因为不需要其他信息。

 Array
(
     [0] => Array
        (
            **[id] => 15817386** HERE!

我让它工作了,感谢任何试图理解我和/或帮助的人。!

 for($x = 0 ; $x < 50 ; $x++){
                    if(($orders[$x]['paymentStatus'] == 'paid') ||           ($orders[$x]['paymentIsPost'] == true)){
                        if($orders[$x]['id'] == $parcels[$x]['data']['seoshop_order_id']){
                                echo '<pre>';
                                var_export($orders[$x]['id']);
                                var_export($orders[$x]['lastname']);
                                var_export($orders[$x]['paymentStatus']);
                                var_export($orders[$x]['paymentIsPost']);
                                var_export($parcels[$x]['name']);
                                var_export($parcels[$x]['data']['seoshop_order_id']);
                                echo '</pre>';
                        }   
                    }
                }