PHP 8.1.0 Alpha 1 available for testing

IntlDateFormatter::parse

datefmt_parse

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)

IntlDateFormatter::parse -- datefmt_parseParse string to a timestamp value

Descrição

Estilo orientado à objeto

public IntlDateFormatter::parse ( string $string , int &$offset = null ) : int|float|false

Estilo procedural

datefmt_parse ( IntlDateFormatter $formatter , string $string , int &$offset = null ) : int|float|false

Converts string to an incremental time value, starting at offset and consuming as much of the input value as possible.

Parâmetros

formatter

The formatter resource

string

string to convert to a time

offset

Position at which to start the parsing in string (zero-based). If no error occurs before string is consumed, offset will contain -1 otherwise it will contain the position at which parsing ended (and the error occurred). This variable will contain the end position if the parse fails. If offset > strlen($string), the parse fails immediately.

Valor Retornado

Timestamp of parsed value, or false if value cannot be parsed.

Exemplos

Exemplo #1 OO example

<?php
$fmt 
= new IntlDateFormatter(
    
'en_US',
    
IntlDateFormatter::FULL,
    
IntlDateFormatter::FULL,
    
'America/Los_Angeles',
    
IntlDateFormatter::GREGORIAN
);
echo 
'First parsed output is ' $fmt->parse('Wednesday, December 20, 1989 4:00:00 PM PT');
$fmt = new IntlDateFormatter(
    
'de-DE',
    
IntlDateFormatter::FULL,
    
IntlDateFormatter::FULL,
    
'America/Los_Angeles',
    
IntlDateFormatter::GREGORIAN
);
?>

Exemplo #2 datefmt_parse() example

<?php
$fmt 
datefmt_create(
    
'en_US',
    
IntlDateFormatter::FULL,
    
IntlDateFormatter::FULL,
    
'America/Los_Angeles',
    
IntlDateFormatter::GREGORIAN
);
echo 
'First parsed output is ' datefmt_parse($fmt'Wednesday, December 20, 1989 4:00:00 PM PT');
$fmt datefmt_create(
    
'de-DE',
    
IntlDateFormatter::FULL,
    
IntlDateFormatter::FULL,
    
'America/Los_Angeles',
    
IntlDateFormatter::GREGORIAN
);
echo 
'Second parsed output is ' datefmt_parse($fmt'Mittwoch, 20. Dezember 1989 16:00 Uhr GMT-08:00');
?

O exemplo acima irá imprimir:

First parsed output is 630201600
Second parsed output is 630201600

Veja Também

add a note add a note

User Contributed Notes 1 note

up
0
Anonymous
2 years ago
Please note:
* on  a 32-bit system, parse() will return float if the value gets out of integer range
* while parse() parses fractional seconds with a format like 'yyyy-MM-dd HH:mm:ss.SSSSSS', it only returns an int. This is also true when the value is returned as float, msecs remain absent in the return value.
To Top