1.PHPタイムスタンプ関数は日付をUNIXタイムスタンプに変換します
終末タイムスタンプPHP
コードは次のとおりです |
|
echo "世界の終わりのタイムスタンプは次のとおりです:".strtotime("2012-12-21")
|
2. タイムスタンプをシステム時間に変換します
コードは次のとおりです |
|
date('Y-m-d H:i:s',"1228348800");
|
3.英語テキストの日付と時刻を取得するPHPタイムスタンプ関数の例は次のとおりです。
比較を容易にするために、date を使用して現在のタイムスタンプと指定されたタイムスタンプをシステム時間に変換します
(1) 明日のこの時間のタイムスタンプを出力します strtotime(”+1 day”)
コードは次のとおりです
|
|
//現在時刻
echo date("Y-m-d H:i:s",time());
//今度は明日
echo date("Y-m-d H:i:s",strtotime("+1 day"));
|
(2) この時点で昨日のタイムスタンプを出力します strtotime(”-1 day”)
コードは次のとおりです
|
|
//現在時刻
echo date("Y-m-d H:i:s",time()) ;
//時間を指定します
echo date("Y-m-d H:i:s",strtotime("-1 day"));
|
(3) 来週のこの時間のタイムスタンプを出力します strtotime("+1week")
コードは次のとおりです |
|
// 現在時刻
echo date("Y-m-d H:i:s",time());
//来週の時間
echo date("Y-m-d H:i:s",strtotime("+1 週間"));
|
(4) 現時点での先週のタイムスタンプを出力します strtotime("-1week")
コードは次のとおりです |
|
//現在時刻
echo date("Y-m-d H:i:s",time());
//先週の今頃
echo date("Y-m-d H:i:s",strtotime("-1 週間"));
|
(5) 指定した曜日のタイムスタンプを出力します strtotime("next Wednesday")
コードは次のとおりです |
|
//現在時刻
echo date("Y-m-d H:i:s",time());
//来週は何時ですか
echo date("Y-m-d H:i:s",strtotime("次の木曜日")); |
(6) 指定した曜日のタイムスタンプを出力します strtotime("last Wednesday")
コードは次のとおりです |
|
//現在時刻
echo date("Y-m-d H:i:s",time());
//時間を指定します
echo date("Y-m-d H:i:s",strtotime("先週の木曜日"));
|
上記の PHP タイムスタンプ関数の例からわかるように、strtotime は英語テキストの日付と時刻の記述を Unix タイムスタンプに解析できます。mktime() または date() を組み合わせて日付と時刻をフォーマットし、指定されたタイムスタンプを取得します。必要な日時を達成するには
他の人が書いたそのような関数を見てテストしましたが、いくつかの小さな問題があります。大晦日の日付の場合、年が表示されません。以下のように修正しました
コードは次のとおりです |
|
関数 mdate($time = NULL) {
$text = '';
$time = $time === NULL || $time > time() : intval($time);
$t = time() - $time //時差(秒)
$y = date('Y', $time)-date('Y', time());//大晦日かどうか
スイッチ($t){
case $t == 0:
$text = 'ただ';
休憩;
$t の場合
$text = $t . '秒前' // 1分以内
休憩
$t
$text = Floor($t / 60) . '分前' // 1時間以内 ;
休憩
$t
$text = Floor($t / (60 * 60)) '時間前' // 1日以内 ;
休憩
$t
$text = Floor($time/(60*60*24)) ==1 ?'昨日' . date('H:i', $time) : '一昨日' . date('H:i' , $time ); //昨日と一昨日
休憩
ケース $t
$text = date('m month d day H:i', $time) //1ヶ月以内 ;
休憩
ケース $t
$text = date('m month d day', $time) //1年以内 ;
休憩
デフォルト:
$text = date('Y年m月d日', $time) //1年前 ;
壊す;
}
$text を返します;
}
|
ThinkPHP:
書いた関数をCommonフォルダに入れます。システムは自動的にそれをロードします。
この common.php ページに配置します。common.php には独自の形式があるため、名前は変更しないでください。
テンプレート内で直接呼び出します
コードは次のとおりです
|
|
{$vo.time|mdate}
|
例 2、より簡単な
コードは次のとおりです |
|
関数 formatDate($sTime) {
//sTime=ソース時刻、cTime=現在時刻、dTime=時差
$cTime = 時間();
$dTime = $cTime - $sTime;
$dDay = intval(date("Ymd",$cTime)) - intval(date("Ymd",$sTime));
$dyear = intval(date("Y",$cTime)) - intval(date("Y",$sTime));
if( $dTime
$dTime = $dTime."秒前";
}elseif( $dTime
$dTime = intval($dTime/60)."分前";
}elseif( $dTime >= 3600 && $dDay == 0 ){
$dTime = "今日".date("H:i",$sTime);
}elseif($dyear==0){
$dTime = date("m-d H:i",$sTime);
}その他{
$dTime = date("Y-m-d H:i",$sTime);
}
$dTime を返します;
}
|
http://www.bkjia.com/PHPjc/730235.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/730235.html技術記事 1. PHP タイムスタンプ関数は日付を UNIX タイムスタンプに変換します 終末タイムスタンプ PHP コードは次のとおりです echo 終末タイムスタンプは次のとおりです: .strtotime(2012-12-21) 2. タイムスタンプをシステム時間に変換します...