我不知道为什么这行得通,但是我试图将时区放入数组中
$transaction = $gateway->subscription()->find($_GET["id"]);
echo '<pre>' , var_dump($transaction->billingPeriodStartDate) , '</pre>';
这显示
object(DateTime)#13 (3) {
["date"]=>
string(26) "2019-04-10 00:00:00.000000"
["timezone_type"]=>
int(3)
["timezone"]=>
string(13) "Europe/Berlin"
}
但是当我决定尝试获取日期时
$transaction = $gateway->subscription()->find($_GET["id"]);
echo '<pre>' , var_dump($transaction->billingPeriodStartDate->timezone) , '</pre>';
这会显示在我的屏幕上
Notice: Undefined property: DateTime::$timezone in C:\xampp\htdocs\finalfees\braintree_php_example\public_html\transaction.php on line 10
NULL
答案 0 :(得分:1)
如果只希望属性执行此操作:
$transaction = (object)(array) $gateway->subscription()->find($_GET["id"]);
或者,如果您只是想要时区,而不是在var_dump中看到的实际完整数组:
$transaction->getTimezone()->getName()