IntlDateFormatter::setLenient

datefmt_set_lenient

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

IntlDateFormatter::setLenient -- datefmt_set_lenientÇözümleyiciye esneklik verir

Açıklama

Nesne yönelimli kullanım

IntlDateFormatter::setLenient ( bool $esnek ) : bool

Yordamsal kullanım

datefmt_set_lenient ( IntlDateFormatter $biçemleyici , bool $esnek ) : bool

Kalıpla tam olarak eşleşmeyen girdilerin yorumlanmasında çözümleyicinin esnek mi yoksa katı mı davranacağını belirler. Esnek çözümleme etkin olduğunda çözümleyici kusurlu tarih ve saat kalıplarını kabul eder ve olabildiğince bir değer oluşturmaya çalışır. Fazladan boşluklar, tanınmayan dizgecikler veya geçersiz değerler ("February 30th" gibi) kabul edilmez.

Değiştirgeler

biçemleyici

Biçemleyici nesne.

esnek

Çözümleyicinin esnek olması isteniyorsa TRUE istenmiyorsa FALSE belirtilir. FALSE öntanımlıdır.

Dönen Değerler

Başarı durumunda TRUE, başarısızlık durumunda FALSE döner.

Örnekler

Örnek 1 - datefmt_set_lenient() örneği

<?php
$fmt 
datefmt_create("tr_TR"IntlDateFormatter::FULL,
        
IntlDateFormatter::FULL'Europe/Istanbul',
        
IntlDateFormatter::GREGORIAN  ,"dd/mm/yyyy");
echo 
"Biçemleyici esnek mi?: ";
if( 
$fmt->isLenient() ){
        echo(
'EVET');
}else{
        echo(
'HAYIR');
}
datefmt_parse($fmt,"35/13/1971");
echo 
"\n '35/13/1971' çözümlenmeye çalışılıyor. Sonuç: " .
        
datefmt_parse($fmt,"35/13/1971");
if( 
intl_get_error_code() !=){
        echo 
"\n Hata iletisi: ".intl_get_error_message();
        echo 
"\n Hata kodu: ".intl_get_error_code();
}
datefmt_set_lenient($fmt,false);
echo 
"\nYeni biçemleyici esnek mi?: ";
if( 
$fmt->isLenient() ){
        echo(
'EVET');
}else{
        echo(
'HAYIR');
}
datefmt_parse($fmt,"35/13/1971");
echo 
"\n '35/13/1971' çözümlenmeye çalışılıyor. Sonuç: " .
        
datefmt_parse($fmt,"35/13/1971");
if( 
intl_get_error_code() !=){
        echo 
"\n Hata iletisi: ".intl_get_error_message();
        echo 
"\n Hata kodu: ".intl_get_error_code()."\n";
}
?>

Örnek 2 - Nesne yönelimli kullanım örneği

<?php
$fmt 
= new IntlDateFormatter("tr_TR"IntlDateFormatter::FULL,
        
IntlDateFormatter::FULL'Europe/Istanbul',
        
IntlDateFormatter::GREGORIAN,"dd/mm/yyyy"  );
echo 
"Biçemleyici esnek mi?: ";
if( 
$fmt->isLenient() ){
        echo(
'EVET');
}else{
        echo(
'HAYIR');
}
$fmt->parse("35/13/1971");
echo 
"\n '35/13/1971' çözümlenmeye çalışılıyor. Sonuç: " .
        
$fmt->parse("35/13/1971");
if( 
intl_get_error_code() !=){
        echo 
"\n Hata iletisi: ".intl_get_error_message();
        echo 
"\n Hata kodu: ".intl_get_error_code();
}

$fmt->setLenient(FALSE);
echo 
"\nYeni biçemleyici esnek mi?: ";
if( 
$fmt->isLenient() ){
        echo(
'EVET');
}else{
        echo(
'HAYIR');
}
$fmt->parse("35/13/1971");
echo 
"\n '35/13/1971' çözümlenmeye çalışılıyor. Sonuç: " .$fmt->parse("35/13/1971");
if( 
intl_get_error_code() !=){
        echo 
"\n Hata iletisi: ".intl_get_error_message();
        echo 
"\n Hata kodu: ".intl_get_error_code()."\n";
}
?>

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

Biçemleyici esnek mi?: EVET
 '35/13/1971' çözümlenmeye çalışılıyor. Sonuç: 34467180
Yeni biçemleyici esnek mi?: HAYIR
 '35/13/1971' çözümlenmeye çalışılıyor. Sonuç:
 Hata iletisi: Date parsing failed: U_PARSE_ERROR
 Hata kodu: 9

Ayrıca Bakınız