strtotime
strtotime は日付のフォーマットをどのくらい認識してくれるのか、気になったので以下のスクリプトを組んで調べてみた。
$fmt = array(
"2005-10-04",
"2005/09/28",
"2005.10.05",
"2005 09 20",
"20050920",
"2005-1-4",
"2005/3/3",
"2005.1.5",
"2005 5 5",
"200555",
"05-04-01",
"05/09/19",
"05.04.04",
"05 07 07",
"5-6-7",
"5/1/1",
"5.8.7",
"5 2 3",
"523",
);
foreach ( $fmt as $f ){
$stp = strtotime( $f );
$day = date("Y/m/d H:i:s", $stp );
echo $f . " => " . $stp . " => " . $day . "
\n";
}
?>
結果は以下の通り
○2005-10-04 => 1128351600 => 2005/10/04 00:00:00
○2005/09/28 => 1127833200 => 2005/09/28 00:00:00
×2005.10.05 => -1 => 1970/01/01 08:59:59
×2005 09 20 => -1 => 1970/01/01 08:59:59
○20050920 => 1127142000 => 2005/09/20 00:00:00
○2005-1-4 => 1104764400 => 2005/01/04 00:00:00
○2005/3/3 => 1109775600 => 2005/03/03 00:00:00
×2005.1.5 => -1 => 1970/01/01 08:59:59
×2005 5 5 => -1 => 1970/01/01 08:59:59
△200555 => 1592924400 => 2020/06/24 00:00:00
※2020年5月55日⇒2020年6月24日と解釈
○05-04-01 => 1112281200 => 2005/04/01 00:00:00
○05/09/19 => 1557327600 => 2019/05/09 00:00:00
×05.04.04 => -1 => 1970/01/01 08:59:59
×05 07 07 => -1 => 1970/01/01 08:59:59
○5-6-7 => 1118070000 => 2005/06/07 00:00:00
△5/1/1 => 988642800 => 2001/05/01 00:00:00
※2001年5月1日と解釈
×5.8.7 => -1 => 1970/01/01 08:59:59
×5 2 3 => -1 => 1970/01/01 08:59:59
△523 => 1133554980 => 2005/12/03 05:23:00
※本日の5時23分と解釈
$fmt = array(
"2005-10-04",
"2005/09/28",
"2005.10.05",
"2005 09 20",
"20050920",
"2005-1-4",
"2005/3/3",
"2005.1.5",
"2005 5 5",
"200555",
"05-04-01",
"05/09/19",
"05.04.04",
"05 07 07",
"5-6-7",
"5/1/1",
"5.8.7",
"5 2 3",
"523",
);
foreach ( $fmt as $f ){
$stp = strtotime( $f );
$day = date("Y/m/d H:i:s", $stp );
echo $f . " => " . $stp . " => " . $day . "
\n";
}
?>
結果は以下の通り
○2005-10-04 => 1128351600 => 2005/10/04 00:00:00
○2005/09/28 => 1127833200 => 2005/09/28 00:00:00
×2005.10.05 => -1 => 1970/01/01 08:59:59
×2005 09 20 => -1 => 1970/01/01 08:59:59
○20050920 => 1127142000 => 2005/09/20 00:00:00
○2005-1-4 => 1104764400 => 2005/01/04 00:00:00
○2005/3/3 => 1109775600 => 2005/03/03 00:00:00
×2005.1.5 => -1 => 1970/01/01 08:59:59
×2005 5 5 => -1 => 1970/01/01 08:59:59
△200555 => 1592924400 => 2020/06/24 00:00:00
※2020年5月55日⇒2020年6月24日と解釈
○05-04-01 => 1112281200 => 2005/04/01 00:00:00
○05/09/19 => 1557327600 => 2019/05/09 00:00:00
×05.04.04 => -1 => 1970/01/01 08:59:59
×05 07 07 => -1 => 1970/01/01 08:59:59
○5-6-7 => 1118070000 => 2005/06/07 00:00:00
△5/1/1 => 988642800 => 2001/05/01 00:00:00
※2001年5月1日と解釈
×5.8.7 => -1 => 1970/01/01 08:59:59
×5 2 3 => -1 => 1970/01/01 08:59:59
△523 => 1133554980 => 2005/12/03 05:23:00
※本日の5時23分と解釈
- [2005/12/03 14:16]
- php |
- トラックバック(0) |
- コメント(0)
- この記事のURL |
- TOP ▲
無効なデータを受信しました。
Docomo(ドコモ)の携帯、主に505シリーズ、506シリーズで「無効なデータを受信しました。」というエラーが表示されることがある。
主な原因は、ヘッダーに Location を送る時に相対パスを書くとエラーが出る。
header("Location: ../hoge/");
exit;
これを絶対パスに修正すると505シリーズはエラーが出なくなるが、506シリーズは改善しない。
原因は良く分からないが exit; 文をカットすると正常に動作するみたいだ。
header("Location: http://www.domain/hoge/");
主な原因は、ヘッダーに Location を送る時に相対パスを書くとエラーが出る。
header("Location: ../hoge/");
exit;
これを絶対パスに修正すると505シリーズはエラーが出なくなるが、506シリーズは改善しない。
原因は良く分からないが exit; 文をカットすると正常に動作するみたいだ。
header("Location: http://www.domain/hoge/");
- [2005/12/02 18:06]
- php |
- トラックバック(0) |
- コメント(0)
- この記事のURL |
- TOP ▲

