почему я не могу получить доступ к элементам этого массива

0

это множественный массив для 2co. Я пытаюсь получить возвращаемые значения и отправить их по электронной почте администратору, но я не могу получить доступ к значениям из этого массива.

<?php
require_once 'payment-api/Twocheckout.php';

Twocheckout::privateKey('4D67BA12-CE09-4F1D-AB20-0133F24E3472');
Twocheckout::sellerId('901249656');
Twocheckout::sandbox(true);

try {
    $charge = Twocheckout_Charge::auth(array(
        "merchantOrderId" => "123",
        "token" => $_POST['token'],
        "currency" => 'USD',
        "total" => '10.00',
        "billingAddr" => array(
            "name" => 'Testing Tester',
            "addrLine1" => '123 Test St',
            "city" => 'Columbus',
            "state" => 'OH',
            "zipCode" => '43123',
            "country" => 'USA',
            "email" => '[email protected]',
            "phoneNumber" => '555-555-5555'
        )
    ));

    if ($charge['response']['responseCode'] == 'APPROVED') {
        echo "Thanks for your Order!";
        echo "<h3>Return Parameters:</h3>";
        echo "<pre>";
        echo "His name" . $charge['billingAddr']['name'];
        echo "</pre>";
    }
} catch (Twocheckout_Error $e) {
    print_r($e->getMessage());
}

вот как я пытаюсь получить доступ к этим значениям.

echo "His name" . $charge['billingAddr']['name'];

что я делаю неправильно здесь.

Что я получаю от print_r($charge);

Array
(
    [validationErrors] => 
    [exception] => 
    [response] => Array
        (
            [type] => AuthResponse
            [currencyCode] => USD
            [shippingAddr] => Array
                (
                    [addrLine1] => 
                    [addrLine2] => 
                    [city] => 
                    [zipCode] => 
                    [phoneNumber] => 
                    [phoneExtension] => 
                    [email] => 
                    [name] => 
                    [state] => 
                    [country] => 
                )

            [merchantOrderId] => 123
            [orderNumber] => 9093719883561
            [transactionId] => 9093719883582
            [billingAddr] => Array
                (
                    [addrLine1] => 123 Test St
                    [addrLine2] => 
                    [city] => Columbus
                    [zipCode] => 43123
                    [phoneNumber] => 555-555-5555
                    [phoneExtension] => 
                    [email] => [email protected]
                    [name] => Testing Tester
                    [state] => OH
                    [country] => USA
                )

            [lineItems] => Array
                (
                    [0] => Array
                        (
                            [duration] => 
                            [options] => Array
                                (
                                )

                            [description] => 
                            [price] => 10.00
                            [quantity] => 1
                            [recurrence] => 
                            [startupFee] => 
                            [productId] => 
                            [tangible] => N
                            [name] => 123
                            [type] => product
                        )

                )

            [recurrentInstallmentId] => 
            [responseMsg] => Successfully authorized the provided credit card
            [responseCode] => APPROVED
            [total] => 10.00
            [errors] => 
        )

)
  • 0
    что вы получаете от этого эха ??
  • 1
    Трудно сказать, не зная, что Twocheckout_Charge::auth . Проверьте var_dump( $charge ) и вы, вероятно, увидите проблему.
Показать ещё 5 комментариев
Теги:
arrays

1 ответ

2
Лучший ответ

Использование:

$charge['response']['billingAddr']['name'];

Вы забыли получить доступ к response ключу.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню