除非转储,否则现在不会显示变量$。这是人口稠密的。它根本不显示“now is empty”字符串。除非是var_dump或var_exported,否则它不会显示$ now内部的内容。
$ipData = json_decode( $ttt, true);
$now="";
if ($ipData['timezone']) {
$tz = new DateTimeZone( $ipData['timezone']);
$now = new DateTime( 'now', $tz); // DateTime object corellated to user's timezone
} else {
// we can't determine a timezone - do something else...
}
if($now==""){echo "now is empty";}
echo "<br />
<br />
".$now->timezone.$now->date;
var_dump($now);
}
if(isset($ now)){echo“它已设置。”;}它确实设置了,虽然我在实际调用之前将其设置为“”,所以无论它是什么初始化。
甚至删除$ now =“”;表明它已初始化。后续代码var_dump($ NOW);回声一下:
object(DateTime)#30(3){[“date”] =&gt; string(19)“2013-05-06 22:52:29”[“timezone_type”] =&gt; int(3)[“timezone”] =&gt; string(16)“America / New_York”} var_dump $ now-&gt; timezone等于America / New_York
答案 0 :(得分:1)
DateTime
返回新的DateTime对象,而不是echo
的字符串。
如果您希望回显$now
的日期部分,则应使用format
,如下所示
echo $now->format('Y-m-d H:i:s');
如果你喜欢回复$now
的时区,你应该使用gettimezone
和getname
,如下所示
echo $now->getTimezone()->getName();
然后他们两个应该如下
echo $now->format('Y-m-d H:i:s').$now->getTimezone()->getName();
答案 1 :(得分:0)
确保您实际上正在输入IF条件。 您可以尝试使用isset($ var)来查看var是否已初始化,或者查看是否为空($ var)以查看其中是否包含某些内容。 [而不是==&#34;&#34;)