DateTime
PHP Manual

DateTime::__construct

date_create

(PHP 5 >= 5.2.0)

DateTime::__construct -- date_createReturns new DateTime object

Opis

Styl obiektowy

public DateTime::__construct() ([ string $time = "now" [, DateTimeZone $timezone = NULL ]] )

Styl proceduralny

DateTime date_create ([ string $time = "now" [, DateTimeZone $timezone = NULL ]] )

Returns new DateTime object.

Parametry

time

Łańcuch daty/czasu. Prawidłowe formaty są wyjaśnione pod adresem Formaty daty i czasu.

Enter NULL here to obtain the current time when using the $timezone parameter.

timezone

A DateTimeZone object representing the timezone of $time.

If $timezone is omitted, the current timezone will be used.

Informacja:

The $timezone parameter and the current timezone are ignored when the $time parameter either is a UNIX timestamp (e.g. @946684800) or specifies a timezone (e.g. 2010-01-28T15:00:00+02:00).

Zwracane wartości

Returns a new DateTime instance. Styl proceduralny zwraca FALSE w przypadku niepowodzenia.

Błędy/Wyjątki

Emits Exception in case of an error.

Rejestr zmian

Wersja Opis
5.3.0 If an invalid date is specified, then an exception is now thrown. Previously an error was emitted.

Przykłady

Przykład #1 DateTime::__construct() example

Styl obiektowy

<?php
try {
    
$date = new DateTime('2000-01-01');
} catch (
Exception $e) {
    echo 
$e->getMessage();
    exit(
1);
}

echo 
$date->format('Y-m-d');
?>

Styl proceduralny

<?php
$date 
date_create('2000-01-01');
if (!
$date) {
    
$e date_get_last_errors();
    foreach (
$e['errors'] as $error) {
        echo 
"$error\n";
    }
    exit(
1);
}

echo 
date_format($date'Y-m-d');
?>

Powyższe przykłady wyświetlą:

2000-01-01

Przykład #2 Intricacies of DateTime::__construct()

<?php
// Specified date/time in your computer's time zone.
$date = new DateTime('2000-01-01');
echo 
$date->format('Y-m-d H:i:sP') . "\n";

// Specified date/time in the specified time zone.
$date = new DateTime('2000-01-01', new DateTimeZone('Pacific/Nauru'));
echo 
$date->format('Y-m-d H:i:sP') . "\n";

// Current date/time in your computer's time zone.
$date = new DateTime();
echo 
$date->format('Y-m-d H:i:sP') . "\n";

// Current date/time in the specified time zone.
$date = new DateTime(null, new DateTimeZone('Pacific/Nauru'));
echo 
$date->format('Y-m-d H:i:sP') . "\n";

// Using a UNIX timestamp.  Notice the result is in the UTC time zone.
$date = new DateTime('@946684800');
echo 
$date->format('Y-m-d H:i:sP') . "\n";

// Non-existent values roll over.
$date = new DateTime('2000-02-30');
echo 
$date->format('Y-m-d H:i:sP') . "\n";
?>

Powyższy przykład wyświetli coś podobnego do:

2000-01-01 00:00:00-05:00
2000-01-01 00:00:00+12:00
2010-04-24 10:24:16-04:00
2010-04-25 02:24:16+12:00
2000-01-01 00:00:00+00:00
2000-03-01 00:00:00-05:00

Zobacz też:


DateTime
PHP Manual