PHP 菜鳥教程

PHP 高級教程

PHP & MySQL

PHP 參考手冊

PHP date_interval_create_from_date_string() 函數(shù)用法及示例

PHP Date & Time 函數(shù)手冊

date_interval_create_from_date_string()函數(shù)從字符串的相關(guān)部分建立一個 DateInterval。

定義和用法

date_interval_create_from_date_string()函數(shù)是DateInterval :: createFromDateString的別名。這接受一個指定間隔的字符串,并返回一個DateInterval對象。

語法

date_interval_create_from_date_string($time)

參數(shù)

序號參數(shù)及說明
1

time (必需)

這是一個字符串值,以您希望輸出日期字符串采用的相對格式格式指定日期/間隔。

返回值

date_interval_create_from_date_string()返回一個DateInterval對象,該對象表示給定的間隔值。

PHP版本

此函數(shù)最初是在PHP版本5.3中引入的,并且可以在所有更高版本中使用。

在線示例

以下示例演示了date_interval_create_from_date_string()函數(shù)的用法-

<?php
   $time = "3year + 3months + 26 day + 12 hours+ 30 minutes +23 seconds";
   $interval = date_interval_create_from_date_string($time);
   print_r($interval);
?>
測試看看?/?

輸出結(jié)果

DateInterval Object
(
    [y] => 3
    [m] => 3
    [d] => 26
    [h] => 12
    [i] => 30
    [s] => 23
    [f] => 0
    [weekday] => 0
    [weekday_behavior] => 0
    [first_last_day_of] => 0
    [invert] => 0
    [days] =>
    [special_type] => 0
    [special_amount] => 0
    [have_weekday_relative] => 0
    [have_special_relative] => 0
)

在此函數(shù)中,您無法使用ISO8601字符串(例如“ P12M”)來解析此類間隔,需要使用DateInterval構(gòu)造函數(shù)。

在線示例

在以下示例中,我們使用ISO8601字符串表示法創(chuàng)建間隔-

<?php
  $time1 = new DateInterval('P25DP8MP9Y');
   print_r($time1);
   $time2 = new DateInterval('PT10H');
   print_r($time2);
?>
測試看看?/?

輸出結(jié)果

DateInterval Object
(
    [y] => 9
    [m] => 8
    [d] => 25
    [h] => 0
    [i] => 0
    [s] => 0
    [f] => 0
    [weekday] => 0
    [weekday_behavior] => 0
    [first_last_day_of] => 0
    [invert] => 0
    [days] =>
    [special_type] => 0
    [special_amount] => 0
    [have_weekday_relative] => 0
    [have_special_relative] => 0
)
DateInterval Object
(
    [y] => 0
    [m] => 0
    [d] => 0
    [h] => 10
    [i] => 0
    [s] => 0
    [f] => 0
    [weekday] => 0
    [weekday_behavior] => 0
    [first_last_day_of] => 0
    [invert] => 0
    [days] =>
    [special_type] => 0
    [special_amount] => 0
    [have_weekday_relative] => 0
    [have_special_relative] => 0
)

在線示例

以下示例向當前日期添加時間間隔并打印結(jié)果。在這里,我們使用date_interval_create_from_date_string函數(shù)來計算時間間隔。-

<?php
   $date = date_create(); 
   $str = "12year 3months 14days";
   $interval = date_interval_create_from_date_string($str);

   $res1 = date_add($date, $interval); 
   print("Date after ".$str);
   print(": ".date_format($res1, 'Y-m-d'));
?>
測試看看?/?

輸出結(jié)果

Date after 12year 3months 14days: 2032-08-28

在線示例

以下示例使用各種ISO8601字符串及其各自的常規(guī)字符串創(chuàng)建日期間隔-

<?php
   print(new DateInterval('P12D')."\n");
   print(DateInterval::createFromDateString('12 day')."\n");

   print(new DateInterval('P7')."\n");
   print(DateInterval::createFromDateString('7 months')."\n");

   print(new DateInterval('P12Y')."\n");
   print(DateInterval::createFromDateString('12 years')."\n");

   print(new DateInterval('PT9H')."\n");
   print(DateInterval::createFromDateString('9 hours')."\n");

   print(new DateInterval('PT19i')."\n");
   print(DateInterval::createFromDateString('19 minutes')."\n");

   print(new DateInterval('PT45S')."\n");
   print(DateInterval::createFromDateString('45 seconds')."\n");
?>
丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清