CakeFest 2024: The Official CakePHP Conference

date_parse_from_format

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

date_parse_from_formatBelirtildiği gibi biçimlendirilmiş olarak tarih hakkında bilgi verir

Açıklama

date_parse_from_format(string $biçem, string $zaman): array

Belirtilen zamanla ilgili ayrıntılı bilgiyi ilişkisel bir dizi ile döndürür.

Bağımsız Değişkenler

biçem

biçem kullanımı hakkında bilgi DateTimeImmutable::createFromFormat() sayfasındadır. Aynı kurallar uygulanır.

zaman

Zamanı gösteren dizge.

Dönen Değerler

Belirtilen zaman hakkında ayrıntılı bilgiyi ilişkisel dizi ile döndürür.

Döndürülen dizi year (yıl), month (ay), day (gün), hour (saat), minute (dakika), second (saniye), fraction (saniyenin kesri), is_localtime (yerel zaman) alanlarını içerir.

is_localtime değeri mevcutsa zone_type anahtarındaki değer zaman diliminin türünü içerir. Zaman dilimi türü 1 (UTC) ise zone (bölge) ve is_dst (hedef mi) alanları, 2 (kısaltma) için tz_abbr (zaman dilimi kısaltması) ve is_dst (hedef mi) alanları ve 3 (zaman dilimi belirteci) için tz_abbr (zaman dilimi kısaltması) ve tz_id (zaman dilimi kimliği) alanları eklenir.

Dizi, warning_count (uyarı sayısı) ve warnings (uyarılar) alanlarını da içerir. İlki kaç uyarı olduğunu belirtir. warnings dizisinin anahtarları belirtilen zamanda uyarının oluştuğu konumu ve uyarıyı içeren dizgeyi belirtir. Aşağıdaki örneklerden biri böyle bir uyarıyı içermektedir.

Dizi ayrıca, error_count (hata sayısı) ve errors (hatalar) alanlarını da içerir. İlki kaç hata bulunduğunu belirtir. errors dizisinin anahtarları belirtilen zamanda hatanın oluştuğu konumu ve hatayı içeren dizgeyi belirtir. Aşağıdaki örneklerden biri böyle bir hatayı içermektedir.

Uyarı

warnings ve errors dizilerinin öğe sayısı bunlar aynı konumda oluşmuşsa warning_count veya error_count değerinden az olamaz.

Hatalar/İstisnalar

zaman değeri NULL (\0) baytını içeriyorsa ValueError istisnası oluşur.

Sürüm Bilgisi

Sürüm: Açıklama
8.0.21, 8.1.8, 8.2.0 zaman değeri NULL (\0) baytını içeriyorsa artık ValueError istisnası oluşuyor, evvelce sessizce yok sayılırdı.
7.2.0 Dönen dizinin zone öğesi artık dakika değil saniye cinsinden değer içeriyor ve imi ters oluyor. Örneğin, -120 yerine artık 7200 dönüyor.

Örnekler

Örnek 1 - date_parse_from_format() örneği

<?php
$date
= "6.1.2009 13:00+01:00";
print_r(date_parse_from_format("j.n.Y H:iP", $date));
?>

Yukarıdaki örneğin çıktısı:

Array
(
    [year] => 2009
    [month] => 1
    [day] => 6
    [hour] => 13
    [minute] => 0
    [second] => 0
    [fraction] =>
    [warning_count] => 0
    [warnings] => Array
        (
        )

    [error_count] => 0
    [errors] => Array
        (
        )

    [is_localtime] => 1
    [zone_type] => 1
    [zone] => 3600
    [is_dst] =>
)

Örnek 2 - Uyarılı date_parse_from_format() örneği

<?php
$date
= "26 August 2022 22:30 pm";
$parsed = date_parse_from_format("j F Y G:i a", $date);

echo
"Uyarı sayısı: ", $parsed['warning_count'], "\n";
foreach (
$parsed['warnings'] as $position => $message) {
echo
"\t{$position} konumunda: {$message}\n";
}
?>

Yukarıdaki örneğin çıktısı:

Uyarı sayısı: 1
	23 konumunda: The parsed time was invalid

Örnek 3 - Hatalı date_parse_from_format() örneği

<?php
$date
= "26 August 2022 CEST";
$parsed = date_parse_from_format("j F Y H:i", $date);

echo
"Hata sayısı: ", $parsed['error_count'], "\n";
foreach (
$parsed['errors'] as $position => $message) {
echo
"\t{$position} konumunda: {$message}\n";
}
?>

Yukarıdaki örneğin çıktısı:

Hata sayısı: 3
	15 konumunda: A two digit hour could not be found
	19 konumunda: Data missing

Ayrıca Bakınız

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top