我不知道为什么这是有效的,但我试图在数组中获得时区
$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
如果您只想要属性执行此操作:
$transaction = (object)(array) $gateway->subscription()->find($_GET["id"]);
或者如果你只想要时区,而不是你在var_dump中看到的实际完整数组:
$transaction->getTimezone()->getName()