我有以下一段代碼。我錄的輸出,以及:在PHP中創建新的DateTime對象不起作用
function convertGeneralAvailabilityTime($date,$from_timezone,$from_timebegin, $from_time$
{
echo "$date,$from_timezone,$from_timebegin, $from_timeend, $to_timezone";
// 2010-09-19,America/New_York,07:45:00, 08:00:00, America/Los_Angeles
$tz1 = new DateTimezone($from_timezone);
$datetime1 = new DateTime("$date $from_timebegin", $tz1);
$datetime2 = new DateTime("$date $from_timeend", $tz1);
echo "$date $from_timebegin";
// 2010-09-19 07:45:00
echo "$date $from_timeend";
// 2010-09-19 08:00:00
var_export($tz1);
//DateTimeZone::__set_state(array(
//))
var_export($datetime1);
//DateTime::__set_state(array(
//))
什麼是錯我的PHP的日期時間()功能可按 - 但我不能參透!我在這臺服務器上使用PHP 5.2.14。
編輯1:對不起,曲解一些PHP輸出 - 糾正它上面
編輯2:我有這給了恰好輸出如下下面的測試文件
<?php
$date = '2010-09-19';
$from_timezone = 'America/New_York';
$from_timebegin = '07:45:00';
$from_timeend = '08:00:00';
$to_timezone = 'America/Los_Angeles'; // Trimmed 2010-09-19 07:45:002010-09-19
$tz1 = new DateTimezone($from_timezone);
$datetime1 = new DateTime("$date $from_timebegin", $tz1);
$datetime2 = new DateTime("$date $from_timeend", $tz1);
echo "$date $from_timebegin".PHP_EOL;
echo "$date $from_timeend".PHP_EOL;
var_dump($tz1);
var_dump($datetime1);
?>
輸出:
jailshell-3.2$ php dttest.php
2010-09-19 07:45:00
2010-09-19 08:00:00
object(DateTimeZone)#1 (0) {
}
object(DateTime)#2 (0) {
}
編輯3 - 如果有幫助,我的phpinfo顯示這個問題,以及
date
date/time support enabled
"Olson" Timezone Database Version 2010.12
Timezone Database external
Default timezone America/Chicago
我的var_dump($ datetime1);給出了完全'DateTime :: __ set_state(array( ))' – siliconpi 2010-09-24 11:25:09
嘿邁克 - 爲什麼我沒有得到任何輸出爲$ datetime1的任何想法? – siliconpi 2010-09-24 16:01:35
@matt_tm當您複製我的代碼並運行它時會發生什麼? – 2010-09-24 16:33:21