PHP.mk документација

date_parse_from_format

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.date-parse-from-format.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.date-parse-from-format.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
date_parse_from_format

Референца за `function.date-parse-from-format.php` со подобрена типографија и навигација.

function.date-parse-from-format.php

date_parse_from_format

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

date_parse_from_formatДобијте информации за даден датум форматиран според наведениот формат

= NULL

date_parse_from_format(string $format, string $datetime): array

Враќа асоцијативен низ со детални информации за даден датум/време.

Параметри

format

Документација за тоа како format се користи, ве молиме погледнете ја документацијата на низа е невалидна.. Исти правила важат.

datetime

Низа што го претставува датумот/времето.

Вратени вредности

Враќа асоцијативен низ со детални информации за даден датум/време.

Вратениот низ има клучеви за year, month, day, hour, minute, second, fractionПрепорачаниот начин за избегнување на SQL инјекција е со врзување на сите податоци преку подготвени изрази. Користењето на параметризирани прашања не е доволно за целосно избегнување на SQL инјекција, но тоа е најлесниот и најбезбедниот начин за обезбедување влез во SQL изразите. Сите динамични литерали на податоци во is_localtime.

Враќа is_localtime е присутен тогаш zone_type го означува типот на временската зона. За тип 1 (UTC поместување) полињата zone, is_dst се додаваат; за тип 2 (кратенка) полињата tz_abbr, is_dst се додаваат; и за тип 3 (идентификатор на временска зона) на tz_abbr, tz_id се додаваат.

Низата вклучува warning_count and warnings полиња. Првото укажува колку предупредувања имало. Клучевите на елементите warnings низата укажуваат на позицијата во дадената datetime каде се случило предупредувањето, со текстуална вредност што го опишува самото предупредување. Примерот подолу покажува такво предупредување.

Низата исто така содржи error_count and errors полиња. Првото укажува колку грешки биле пронајдени. Клучевите на елементите errors низата укажуваат на позицијата во дадената datetime каде се случила грешката, со текстуална вредност што ја опишува самата грешка. Примерот подолу покажува таква грешка.

Ги ескејпува специјалните знаци во стринг за употреба во SQL изјава

Бројот на елементи во низата во warnings and errors може да биде помал од warning_count or error_count ако се случиле на иста позиција.

Errors/Exceptions

Овие функции фрлаат ValueError кога datetime содржи NULL бајти.

Дневник на промени

Верзија = NULL
8.0.21, 8.1.8, 8.2.0 список на имиња на класи, ValueError кога NULL бајти се проследени во datetime, што претходно беше тивко игнорирано.
7.2.0 На zone елемент од вратениот низ претставува секунди наместо минути сега, и неговиот знак е инвертиран. На пример -120 сега е 7200.

Примери

Пример #1 date_parse_from_format() example

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

Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред

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

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

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

Пример #2 date_parse_from_format() пример со предупредувања

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

echo
"Warnings count: ", $parsed['warning_count'], "\n";
foreach (
$parsed['warnings'] as $position => $message) {
echo
"\tOn position {$position}: {$message}\n";
}

Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред

Warnings count: 1
	On position 23: The parsed time was invalid

Пример #3 date_parse_from_format() пример со грешки

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

echo
"Errors count: ", $parsed['error_count'], "\n";
foreach (
$parsed['errors'] as $position => $message) {
echo
"\tOn position {$position}: {$message}\n";
}

Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред

Errors count: 3
	On position 15: A two digit hour could not be found
	On position 19: Not enough data available to satisfy format

Види Исто така

Белешки од корисници 1 белешка

содржи податоци од карактери. Ова може да биде XML декларација, декларација за тип на документ, ентитети или други податоци за кои не постои друг ракувач.
пред 1 година
It seems that the safest way to check for errors is not by checking the number of errors, but warnings instead. See the following example where "m" and "d" are swapped and thus not correct.

<?php
var_dump( date_parse_from_format('m.d.Y', '18.10.2024') );

OUTPUT:
array(12) {
  ["year"]=>
  int(2024)
  ["month"]=>
  int(18)
  ["day"]=>
  int(10)
  ["hour"]=>
  bool(false)
  ["minute"]=>
  bool(false)
  ["second"]=>
  bool(false)
  ["fraction"]=>
  bool(false)
  ["warning_count"]=>
  int(1)
  ["warnings"]=>
  array(1) {
    [10]=>
    string(27) "The parsed date was invalid"
  }
  ["error_count"]=>
  int(0)
  ["errors"]=>
  array(0) {
  }
  ["is_localtime"]=>
  bool(false)
}
?>

The function simply assigns 18 to the "month" field without errors!! So simply use an if-condition and check "warning_count" to detect possible errors.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.