- PR -

【PHP】date()関数が正しくでない?

1
投稿者投稿内容
YN
常連さん
会議室デビュー日: 2005/08/25
投稿数: 27
投稿日時: 2006-10-26 11:25
次のような関数を作ってテストしますと
--------------------------------------------------------
<?php
$yymmdd = "20006/10/26";
print("$yymmdd は". get_youbi($yymmdd) . "曜日である。<br>\\n");
$youbix = date("w",strtotime($yymmdd));
print('date("w",strtotime($yymmdd)) = '. "$youbix". "<br>\\n");

function get_youbi($ymd) {
$week = array('日','月','火','水','木','金','土');
$youbi = date("w",strtotime($ymd));
return $week[$youbi];
}

---実行結果---

20006/10/26 は水曜日である。
date("w",strtotime($ymd)) = 3
-----------------------------------------------------

となって正しく出ません。

phpのバージョンは
下記の通りです。

[root@srvb root]# rpm -qa | grep php
php5-5.1.1-0vl2
php5-mysql-5.1.1-0vl2
php5-pear-5.1.1-0vl2
php5-apache-5.1.1-0vl2
php5-pgsql-5.1.1-0vl2

どこか誤りがありますか?
或いは解決方法があるでしょうか?



[ メッセージ編集済み 編集者: 未記入 編集日時 2006-10-26 12:00 ]

[ メッセージ編集済み 編集者: 未記入 編集日時 2006-10-26 12:01 ]
ださいくろう
常連さん
会議室デビュー日: 2006/10/17
投稿数: 46
お住まい・勤務地: 豊田市
投稿日時: 2006-10-26 11:41
print('date("w",strtotime($ymd)) = '. "$youbix". "<br>\\n");
print('date("w",strtotime($ymd)) = '. "$youbix". "<br>\\n");
print('date("w",strtotime($ymd)) = '. "$youbix". "<br>\\n");
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2006-10-26 12:16
記載ミスと信じたい

西暦2万6年
計算していないから、何曜日かはわからない。

追記
確認してみた
コード:

php -r "echo date('w', strtotime('20006/10/26'));"


結果は3(水曜日)でした。

[ メッセージ編集済み 編集者: かずくん 編集日時 2006-10-26 12:20 ]
冬寂
ぬし
会議室デビュー日: 2002/09/17
投稿数: 449
投稿日時: 2006-10-26 12:35
その前に「この関数は US 英文形式の日付を含む文字列が指定されることを期待しており」という意味を理解していますか?
YN
常連さん
会議室デビュー日: 2005/08/25
投稿数: 27
投稿日時: 2006-10-26 13:05
すみません、あまりにお粗末な質問でした!
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2006-10-26 13:32
引用:

冬寂さんの書き込み (2006-10-26 12:35) より:
その前に「この関数は US 英文形式の日付を含む文字列が指定されることを期待しており」という意味を理解していますか?



http://www.gnu.org/software/tar/manual/html_node/tar_109.html
に従って、20006-10-26にすべきでしたね。
1

スキルアップ/キャリアアップ(JOB@IT)