(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
IntlDateFormatter::setPattern -- datefmt_set_pattern โ Set the pattern used for the IntlDateFormatter
้ขๅๅฏน่ฑก้ฃๆ ผ
่ฟ็จๅ้ฃๆ ผ
Set the pattern used for the IntlDateFormatter.
formatter
The formatter resource.
pattern
New pattern string to use. Possible patterns are documented at ยป https://unicode-org.github.io/icu/userguide/format_parse/datetime/.
ๆๅๆถ่ฟๅ true
๏ผ ๆ่
ๅจๅคฑ่ดฅๆถ่ฟๅ false
ใ
Bad formatstrings are usually the cause of the failure.
็คบไพ #1 datefmt_set_pattern() example
<?php
$fmt = datefmt_create(
'en_US',
IntlDateFormatter::FULL,IntlDateFormatter::FULL,
'America/Los_Angeles',
IntlDateFormatter::GREGORIAN,
'MM/dd/yyyy'
);
echo 'Pattern of the formatter is : ', datefmt_get_pattern($fmt), PHP_EOL;
echo 'First Formatted output with pattern is ', datefmt_format($fmt, 0), PHP_EOL;
datefmt_set_pattern($fmt, 'yyyyMMdd hh:mm:ss z');
echo 'Now pattern of the formatter is : ', datefmt_get_pattern($fmt), PHP_EOL;
echo 'Second Formatted output with pattern is ', datefmt_format($fmt, 0), PHP_EOL;
?>
็คบไพ #2 OO example
<?php
$fmt = new IntlDateFormatter(
'en_US',
IntlDateFormatter::FULL,IntlDateFormatter::FULL,
'America/Los_Angeles',
IntlDateFormatter::GREGORIAN,
'MM/dd/yyyy'
);
echo 'Pattern of the formatter is : ', $fmt->getPattern(), PHP_EOL;
echo 'First Formatted output is ', $fmt->format(0), PHP_EOL;
$fmt->setPattern('yyyyMMdd hh:mm:ss z');
echo 'Now pattern of the formatter is : ', $fmt->getPattern(), PHP_EOL;
echo 'Second Formatted output is ', $fmt->format(0), PHP_EOL;
?>
ไปฅไธ็คบไพไผ่พๅบ๏ผ
Pattern of the formatter is : MM/dd/yyyy First Formatted output is 12/31/1969 Now pattern of the formatter is : yyyyMMdd hh:mm:ss z Second Formatted output is 19691231 04:00:00 PST