ホームページ >バックエンド開発 >PHPチュートリアル >phpのstrtotime関数の使用例を詳しく解説
この記事では、PHP の strtotime 関数の使用法を主に、例の形式で詳細に分析します。時刻形式の変換が必要な場合に最適です。この記事の例では、php での strtotime 関数の使用法について説明します。皆さんの参考に共有してください。詳細は次のとおりです。 strtotime(
string$time[, int $now])int strtotime(string $time [,int $now] この関数は、米国英語を含む日付形式を想定しており、それを解析しようとします。 Unix
タイムスタンプ(この形式では、1970 年 1 月 1 日月曜日 00:00:00 からの秒数) に、現在提供されているタイムスタンプ、または現在が提供されていない場合は現在時刻を基準にして変換します この関数は、 TZ 環境変数 (存在する場合) を使用してタイムスタンプを計算します。PHP 5.1.0 以降では、all/datetime 関数を使用してタイムゾーンを決定する簡単な方法があり、このプロセスは date_default_timezone_get() 関数のページで説明されています。 PHP 5.0.0 では、文字列の解析はマイクロ秒単位で許可されていません。PHP 5.0.0 以降は許可されていますが、無視されます。
現在、これらはタイムスタンプを使用して基本相対日付として計算されています。戻り値: 成功するとタイムスタンプを返します。それ以外の場合は、FALSE を返します。PHP 5.1.0 より前では、この関数は失敗すると -1 を返します。
次に、strtotime 文字を時間に変換する関数の例を見てみましょう。コードは次のとおりです。以下のように:
<?php //function function nextWeeksDay($date_begin,$nbrweek) { $nextweek=array(); for($i = 1; $i <= $nbrweek; $i++) { // 52 week in one year of coursewww.phpfensi.com $nextweek[$i]=date('D d M Y', strtotime('+'.$i.' week',$date_begin)); } return $nextweek; } /// end function /// example of a select date // var $date_begin = strtotime('06-05-2010'); //D Day Month Year - like function format. $nbrweek=52; // call function $result=nextWeeksDay($date_begin,$nbrweek); // Preview for($i = 1; $i <= $nbrweek; $i++) { echo '<br> - '.$result[$i]; } ?>
<?php $str = 'Not Good'; // previous to PHP 5.1.0 you would compare with -1, instead of false if (($timestamp = strtotime($str)) === false) { echo "The string ($str) is bogus"; } else { echo "$str == " . date('l dS o F Y h:i:s A', $timestamp); } ?> <?php echo strtotime("now"), " "; echo strtotime("10 September 2000"), " "; echo strtotime("+1 day"), " "; echo strtotime("+1 week"), " "; echo strtotime("+1 week 2 days 4 hours 2 seconds"), " "; echo strtotime("next Thursday"), " "; echo strtotime("last Monday"), " "; ?>
これは、年間の「稼働日」を計算するための簡単な関数です。「稼働日」とは、$array で指定された週末や休日のない休日を指します。
コードは次のとおりです:function get_working_days($to_date) { $holidays = array( 1 => array(10), //2011 ... 2 => array(11), 3 => array(21), //... 2011 4 => array(29,30), //2010 ... 5 => array(3,4,5), 6 => array(), 7 => array(19), 8 => array(11,12,13), 9 => array(20,23), 10 => array(11), 11 => array(3,23), 12 => array(23) //... 2010 ); for($to_date, $w = 0, $i = 0, $x = time(); $x < $to_date; $i++, $x = strtotime("+$i day")) { if(date("N",$x) < 6 &! in_array(date("j",$x),$holidays[date("n",$x)])) $w++; } return $w; } //Usage: echo get_working_days(strtotime("2011-01-08"));
以上がphpのstrtotime関数の使用例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。