PHP yeni bir DateTime nesnesi oluşturma çalışmıyor

0 Cevap php

Ben aşağıdaki kod parçası var. Ben de çıktı kaydettik:

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(
//))

Şey benim PHP'nin DateTime () funciton ile yanlış - ama ne anlamak edemez! Ben bu sunucuda PHP 5.2.14 kullanıyorum.


Edit 1: Üzgünüm, bazı PHP çıktı yanlış - Yukarıda düzeltilmiş


2 Edit: Ben aşağıdaki gibi tam çıkışını verdi aşağıdaki test dosya vardı

<?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);

?>

Çıktı:

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 Düzenleme - bu yardımcı olur, benim Phpinfo de bu gösteriyor

date
date/time support   enabled
"Olson" Timezone Database Version   2010.12
Timezone Database   external
Default timezone    America/Chicago 

0 Cevap