日付・時刻を取得する08





☆★データーでの確認★☆

2つの日時を比較する


strtotime関数 time関数 mktime関数


  • 所定の日付のタイムスタンプを返す。
  • 引数に「"now"」を指定すると、現在日時のタイムスタンプを取得できる。
  • 引数に「日」「月(英数)」「年」を半角スペースで区切った文字列をしていすると、その年月日のタイムスタンプを取得できる。



【 書式 】

  • Cの処理が遅い場合、リストの実行中に「Fatal error: Maximum execution time of 30 seconds exceeded.....」というエラーメッセージが表示される。その際は、for文のループ続行条件を小さい値(10000000など)

PHPスクリプト

<?php
	/* strtotime関数による時間比較
	------------------------------------------------------ */
	// 開始時のタイムスタンプを取得
	$start = strtotime("now");
	print "開始のタイムスタンプ" . $start . "<br>";
	for ($i = 0; $i < 5000000; $i++) {
		// 時間のかかる処理を実行
	}
	// 終了時のタイムスタンプを取得
	$end = strtotime("now");
	print "終了時のタイムスタンプ" . $end . "<br>";
	// 経過した時間を出力表示
	print ($end - $start) . " 秒経過した!<br><br>";
	
	
	/* time関数による時間比較 
	----------------------------------------------------*/
	// 開始時間のタイムスタンプを取得
	$start = time();
	print "開始時のタイプスタンプ" . $start . "<br>";
	for ($i = 0; $i < 5000000; $i++) {
		// 時間のかかる処理を実行
	}
	// 終了時のタイムスタンプを取得
	$end = time();
	print "終了時のタイムスタンプ" . $end . "<br>";
	// 経過した時間を出力表示
	print ($end - $start) . " 秒経過した!<br><br>";
	
	
	/* mktime関数による日数の比較
	--------------------------------------------------------- */
	// 2013年9月14日を設定
	$timestamp1 = mktime(0, 0, 0, 9, 14, 2013);
	// 2013年10月14日を設定
	$timestamp2 = mktime(0, 0, 0, 10, 14, 2013);
	// 差を計算
	print ($timestamp2 - $timestamp1) / (3600*24) . "日の違いがあります!<br>";
?>


ソースコード


ソースコード【 HTML 】

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="description" content="PHPスクリプトで日付を取得し、それに対して処理をする方法。">
<meta name="keywords" content="PHP,日付の処理">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>日付の処理</title>
<link rel="shortcut icon" href="../favicon.gif">

<!-- IE対策 -->
<!--[if ite IE 9]>
<script src="http://html5shiv.googlecode.com/svn/ttunk/html5.js"></script>
<![endif]-->

<style>
article, aside, dialog, figure, footer, header,  hgroup, menu, nav, section {
	display: block;
}
</style>
<link href="css/style.css" rel="stylesheet" type="text/css" media="all">
</head>

<body>
<div id="container">
<header>
  <h1><span>日付・時刻を処理する</span></h1>
</header>
<section id="contents">
<h1><span>2-3</span>2つの日時を比較する</h1>
<section class="sec-top">
<h2>strtotime関数 time関数 mktime関数</h2>
<p class="mark"><span>P</span>oint</p>
<div class="box">
<dl>
<dt>strtotime関数 time関数 mktime関数</dt>
<dd>
  <ul>
    <li>所定の日付のタイムスタンプを返す。</li>
    <li>引数に「"now"」を指定すると、現在日時のタイムスタンプを取得できる。</li>
    <li>引数に「日」「月(英数)」「年」を半角スペースで区切った文字列をしていすると、その年月日のタイムスタンプを取得できる。</li>
  </ul>
</dd>
</div>
</section>
<section class="sec-php">
  <h2>ブラウザでの表示</h2>
  <p>PCの処理が遅い場合、リストの実行中に「Fatal error: Maximum execution time of 30 seconds exceeded.....」というエラーメッセージが表示される。その際は、for文のループ続行条件を小さい値(10000000など)</p>
  <div class="box">
    <?php
	/* strtotime関数による時間比較
	------------------------------------------------------ */
	// 開始時のタイムスタンプを取得
	$start = strtotime("now");
	print "開始のタイムスタンプ" . $start . "<br>";
	for ($i = 0; $i < 5000000; $i++) {
		// 時間のかかる処理を実行
	}
	// 終了時のタイムスタンプを取得
	$end = strtotime("now");
	print "終了時のタイムスタンプ" . $end . "<br>";
	// 経過した時間を出力表示
	print ($end - $start) . " 秒経過した!<br><br>";
	
	
	/* time関数による時間比較 
	----------------------------------------------------*/
	// 開始時間のタイムスタンプを取得
	$start = time();
	print "開始時のタイプスタンプ" . $start . "<br>";
	for ($i = 0; $i < 5000000; $i++) {
		// 時間のかかる処理を実行
	}
	// 終了時のタイムスタンプを取得
	$end = time();
	print "終了時のタイムスタンプ" . $end . "<br>";
	// 経過した時間を出力表示
	print ($end - $start) . " 秒経過した!<br><br>";
	
	
	/* mktime関数による日数の比較
	--------------------------------------------------------- */
	// 2013年9月14日を設定
	$timestamp1 = mktime(0, 0, 0, 9, 14, 2013);
	// 2013年10月14日を設定
	$timestamp2 = mktime(0, 0, 0, 10, 14, 2013);
	// 差を計算
	print ($timestamp2 - $timestamp1) / (3600*24) . "日の違いがあります!<br>";
?>
  </div>
</section>
</section>
<footer>
  <h1>PHPスクリプト</h1>
  <p>参考資料:<a href="http://d.hatena.ne.jp/webry/20130825/p2#note_second" target="_blank">速攻&amp;活用! Web開発者のためのPHPベストサンプル集</a></p>
  <dl>
    <dt>まとめサイト:</dt>
    <dd>
      <ul>
        <li><a href="http://webrynote.jimdo.com/" target="_blank">動画で確認するscript | FlashとJavaScrip</a></li>
        <li><a href="http://d.hatena.ne.jp/webry/archive?word=%2A%5BWEB%B3%AB%C8%AF%5D" target="_blank">[WEB開発]</a></li>
        <li><a href="http://d.hatena.ne.jp/webry/20130217/p4" target="_blank">[PHP]</a></li>
        <li><a href="http://d.hatena.ne.jp/webry/20130205/p2" target="_blank">[jQuery]</a></li>
        <li><a href="http://d.hatena.ne.jp/webry/20121222/p2" target="_blank">[JavaScript]</a></li>
        <li><a href="http://d.hatena.ne.jp/webry/20130408/p6" target="_blank">[HTML5]</a></li>
      </ul>
    </dd>
  </dl>
  <small>Copyright&copy; 2013 <a href="http://d.hatena.ne.jp/webry/" title="webryのホームページへ" target="_blank">実践するWEBサイト制作 | webnote</a> All Rights Reserved.</small> </footer>

<!-- /#container -->
</div>
</body>
</html>

ソースコードCSS

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="description" content="PHPスクリプトで日付を取得し、それに対して処理をする方法。">
<meta name="keywords" content="PHP,日付の処理">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>日付の処理</title>
<link rel="shortcut icon" href="../favicon.gif">

<!-- IE対策 -->
<!--[if ite IE 9]>
<script src="http://html5shiv.googlecode.com/svn/ttunk/html5.js"></script>
<![endif]-->

<style>
article, aside, dialog, figure, footer, header,  hgroup, menu, nav, section {
	display: block;
}
</style>
<link href="css/style.css" rel="stylesheet" type="text/css" media="all">
</head>

<body>
<div id="container">
<header>
  <h1><span>日付・時刻を処理する</span></h1>
</header>
<section id="contents">
<h1><span>2-3</span>2つの日時を比較する</h1>
<section class="sec-top">
<h2>strtotime関数 time関数 mktime関数</h2>
<p class="mark"><span>P</span>oint</p>
<div class="box">
<dl>
<dt>strtotime関数 time関数 mktime関数</dt>
<dd>
  <ul>
    <li>所定の日付のタイムスタンプを返す。</li>
    <li>引数に「"now"」を指定すると、現在日時のタイムスタンプを取得できる。</li>
    <li>引数に「日」「月(英数)」「年」を半角スペースで区切った文字列をしていすると、その年月日のタイムスタンプを取得できる。</li>
  </ul>
</dd>
</div>
</section>
<section class="sec-php">
  <h2>ブラウザでの表示</h2>
  <p>PCの処理が遅い場合、リストの実行中に「Fatal error: Maximum execution time of 30 seconds exceeded.....」というエラーメッセージが表示される。その際は、for文のループ続行条件を小さい値(10000000など)</p>
  <div class="box">
    <?php
	/* strtotime関数による時間比較
	------------------------------------------------------ */
	// 開始時のタイムスタンプを取得
	$start = strtotime("now");
	print "開始のタイムスタンプ" . $start . "<br>";
	for ($i = 0; $i < 5000000; $i++) {
		// 時間のかかる処理を実行
	}
	// 終了時のタイムスタンプを取得
	$end = strtotime("now");
	print "終了時のタイムスタンプ" . $end . "<br>";
	// 経過した時間を出力表示
	print ($end - $start) . " 秒経過した!<br><br>";
	
	
	/* time関数による時間比較 
	----------------------------------------------------*/
	// 開始時間のタイムスタンプを取得
	$start = time();
	print "開始時のタイプスタンプ" . $start . "<br>";
	for ($i = 0; $i < 5000000; $i++) {
		// 時間のかかる処理を実行
	}
	// 終了時のタイムスタンプを取得
	$end = time();
	print "終了時のタイムスタンプ" . $end . "<br>";
	// 経過した時間を出力表示
	print ($end - $start) . " 秒経過した!<br><br>";
	
	
	/* mktime関数による日数の比較
	--------------------------------------------------------- */
	// 2013年9月14日を設定
	$timestamp1 = mktime(0, 0, 0, 9, 14, 2013);
	// 2013年10月14日を設定
	$timestamp2 = mktime(0, 0, 0, 10, 14, 2013);
	// 差を計算
	print ($timestamp2 - $timestamp1) / (3600*24) . "日の違いがあります!<br>";
?>
  </div>
</section>
</section>
<footer>
  <h1>PHPスクリプト</h1>
  <p>参考資料:<a href="http://d.hatena.ne.jp/webry/20130825/p2#note_second" target="_blank">速攻&amp;活用! Web開発者のためのPHPベストサンプル集</a></p>
  <dl>
    <dt>まとめサイト:</dt>
    <dd>
      <ul>
        <li><a href="http://webrynote.jimdo.com/" target="_blank">動画で確認するscript | FlashとJavaScrip</a></li>
        <li><a href="http://d.hatena.ne.jp/webry/archive?word=%2A%5BWEB%B3%AB%C8%AF%5D" target="_blank">[WEB開発]</a></li>
        <li><a href="http://d.hatena.ne.jp/webry/20130217/p4" target="_blank">[PHP]</a></li>
        <li><a href="http://d.hatena.ne.jp/webry/20130205/p2" target="_blank">[jQuery]</a></li>
        <li><a href="http://d.hatena.ne.jp/webry/20121222/p2" target="_blank">[JavaScript]</a></li>
        <li><a href="http://d.hatena.ne.jp/webry/20130408/p6" target="_blank">[HTML5]</a></li>
      </ul>
    </dd>
  </dl>
  <small>Copyright&copy; 2013 <a href="http://d.hatena.ne.jp/webry/" title="webryのホームページへ" target="_blank">実践するWEBサイト制作 | webnote</a> All Rights Reserved.</small> </footer>

<!-- /#container -->
</div>
</body>
</html>

ブラウザで表示【 FireFox




IEtester【 IE8 】




IEtester【 IE9




ブラウザで表示【 Chrome




HTML5 Outliner【 Chrome




iPhone【 MbileSfari 】