IntlCalendar::fromDateTime
(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a2)
IntlCalendar::fromDateTime β Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ IntlCalendar ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΊΡΠ° DateTime ΠΈΠ»ΠΈ ΡΡΡΠΎΠΊΠΈ
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
ΠΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΡΠΈΠ»Ρ
ΠΠΎΠ²ΡΠΉ ΠΊΠ°Π»Π΅Π½Π΄Π°ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡ ΡΠΎΡ ΠΆΠ΅ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ DateTime,
Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ ΠΏΠΎΡΠ΅ΡΠ΅ΠΉ ΡΠΎΡΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π΄Π°Ρ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ
Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΈΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΈΡ
Π΄Π°Π½Π½ΡΡ
, ΠΈΠ»ΠΈ Π΄Π°Ρ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ,
ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΠ°ΡΠΎΠ²ΠΎΠΉ ΠΏΠΎΡΡ Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ ΡΠ°ΡΡ
ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ Π² ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ
ΡΠ°ΡΠΎΠ²ΡΡ
ΠΏΠΎΡΡΠΎΠ².
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ IntlCalendar ΠΈΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ null, Π΅ΡΠ»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΠΎΡΠΈΠ±ΠΊΠ°.
ΠΡΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ Π² ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ string ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅,
ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ Π²Π½ΡΡΡΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° ΠΊΠ»Π°ΡΡΠ° DateTime, Π²ΡΠΏΠ»ΡΠ²Π°Π΅Ρ ΠΏΠΎ ΡΡΠ΅ΠΊΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ².
ΠΡΠΈΠΌΠ΅ΡΡ
ΠΡΠΈΠΌΠ΅Ρ #1 ΠΡΠΈΠΌΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ°Π»Π΅Π½Π΄Π°ΡΡ ΠΈΠ· Π΄Π°ΡΡ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ IntlCalendar::fromDateTime()
<?php
ini_set('date.timezone', 'Europe/Lisbon');
// ΠΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π²ΡΠ·ΠΎΠ²Ρ IntlCalendar::fromDateTime(new DateTime(...))
$cal1 = IntlCalendar::fromDateTime('2013-02-28 00:01:02 Europe/Berlin', 'de_DE');
// ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π΄Π»Ρ ΠΊΠ°Π»Π΅Π½Π΄Π°ΡΡ ΡΠΊΠ°Π·Π°Π»ΠΈ ΡΠ°ΡΠΎΠ²ΠΎΠΉ ΠΏΠΎΡΡ Europe/Berlin,
// Π° Π½Π΅ Europe/Lisbon, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΠΏΠΎΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
echo IntlDateFormatter::formatObject($cal1, 'yyyy MMMM d HH:mm:ss VVVV', 'de_DE'), "\n";
?>
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°:
2013 Februar 28 00:01:02 Deutschland Zeit