Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在php中动态输出每个时区的当前时间?_Php_Drupal - Fatal编程技术网

如何在php中动态输出每个时区的当前时间?

如何在php中动态输出每个时区的当前时间?,php,drupal,Php,Drupal,我在每个节点中存储了一个时区,并希望根据时区设置显示每个节点的当前时间 例如。有一个节点America/SaoèPaulo-存储的时区将是“America/SaoèPaulo” 为了以tz格式显示时区,我必须使用以下代码打印它(Drupal 7): 如何在php代码中以友好的方式更改该部分?我试过这样做: <?php $zone='<?php print $node->field_mytimezone['und'][0]['value']; ?>'; ?> <

我在每个节点中存储了一个时区,并希望根据时区设置显示每个节点的当前时间

例如。有一个节点America/SaoèPaulo-存储的时区将是“America/SaoèPaulo”

为了以tz格式显示时区,我必须使用以下代码打印它(Drupal 7):

如何在php代码中以友好的方式更改该部分?我试过这样做:

<?php $zone='<?php print $node->field_mytimezone['und'][0]['value']; ?>'; ?>
<?php date_default_timezone_set('$zone');
echo date('H:i');
?>


嵌套显然不起作用,但我不知道如何在保留第一部分(以tz格式输出时区的部分)的同时正确地实现它。

我不太清楚您想要什么,但是如果时区字符串存储在
$node->field_mytimezone['und'][0]['value']
以下代码应能让您了解如何使用它:

$zone = $node->field_mytimezone['und'][0]['value'];

$dt = new DateTime();

$dt->setTimezone(new DateTimeZone($zone));

echo $dt->format('H:i');

你说得对,这有点让人困惑。最终结果应该是09:10左右。根据时区设置的不同,每个节点的时间会有所不同。
<?php $zone='<?php print $node->field_mytimezone['und'][0]['value']; ?>'; ?>
<?php date_default_timezone_set('$zone');
echo date('H:i');
?>
$zone = $node->field_mytimezone['und'][0]['value'];

$dt = new DateTime();

$dt->setTimezone(new DateTimeZone($zone));

echo $dt->format('H:i');