Проблемы с доступом внутри массивов Брейнтри - PullRequest
0 голосов
/ 10 апреля 2019

Я не знаю, почему это работает, но я пытаюсь получить часовой пояс внутри массива

<code>$transaction = $gateway->subscription()->find($_GET["id"]);
echo '<pre>' , var_dump($transaction->billingPeriodStartDate) , '
';

Это показывает

object(DateTime)#13 (3) {
  ["date"]=>
  string(26) "2019-04-10 00:00:00.000000"
  ["timezone_type"]=>
  int(3)
  ["timezone"]=>
  string(13) "Europe/Berlin"
}

Но когда я решаю попытаться получить дату

<code>$transaction = $gateway->subscription()->find($_GET["id"]);
echo '<pre>' , var_dump($transaction->billingPeriodStartDate->timezone) , '
';

Это отображается на моем экране

Notice:  Undefined property: DateTime::$timezone in C:\xampp\htdocs\finalfees\braintree_php_example\public_html\transaction.php on line 10

NULL

1 Ответ

1 голос
/ 10 апреля 2019

Если вы просто хотите, чтобы свойства делали это:

$transaction = (object)(array) $gateway->subscription()->find($_GET["id"]);

Или, если вы просто хотите часовой пояс, а не фактически полный массив, который вы видите в var_dump:

$transaction->getTimezone()->getName()
...