2013年2月8日

よく使いそうな日付関連まとめ - PHP



タイムゾーンの取得
<?php echo date_default_timezone_get(); ?>
タイムゾーンの設定
<?php date_default_timezone_set('Asia/Tokyo'); ?>
サポートされるタイムゾーンのリスト
http://www.php.net/manual/ja/timezones.php



日付
<?php
 echo date('Y年n月j日');  // 2013年2月8日
 echo date('Y-m-d H:i:s'); // 2013-02-08 11:28:04
 echo date('F jS, l');  // February 8th, Friday
?>


時刻
<?php
 echo date('H:i:s');   // 11:28:04
 echo date('g:ia');   // 11:28am
?>


現在のタイムスタンプ
<?php
 echo time();
 echo date('U');
 echo mktime(date('H'),date('i'),date('s'),date('m'),date('d'),date('Y'));
 echo strtotime('now');
?>


日付情報
<?php var_dump(getdate()); 
// array
//  'seconds' => int 20
//  'minutes' => int 29
//  'hours' => int 11
//  'mday' => int 8
//  'wday' => int 5
//  'mon' => int 2
//  'year' => int 2013
//  'yday' => int 38
//  'weekday' => string 'Friday' (length=6)
//  'month' => string 'February' (length=8)
//  0 => int 1360276160
?>
月の日数
<?php echo date('t'); ?>  // 28
うるう年判定
<?php echo date('L'); ?>  // 0 or 1
年始から何日目か
<?php echo date('z日目'); ?>


日付計算例

現在時刻より1週間と2日、4時間2秒前
<?php
 echo date('Y年n月j日 H時i分s秒', mktime(date('H') - 4,date('i'),date('s') - 2,date('m'),date('d') - 9,date('Y')));
 echo date('Y年n月j日 H時i分s秒', strtotime("-1 week -2 days -4 hours -2 seconds"));
?>
第17週目の日曜日
<?php echo date("Y年n月j日", strtotime("2013-W17-0")); 
// 0=日曜日, 1=月曜日, 2=火曜日, 3=水曜日, 4=木曜日, 5=金曜日, 6=土曜日
?>
年始から123日目の日付
<?php
 echo date("Y年n月j日", mktime(0, 0, 0, 1, 1+123, 2013));
 echo date("Y年n月j日", strtotime("+123 days", strtotime('2013-01-01')));
?>

0 件のコメント:

コメントを投稿