CGI-BBS > SO−HO > ショッピングバスケット > [簡易ショッピングバスケットで受注番号] を見て


カレッヂ
カレッヂ


質問者 まっちゃん  投稿日 1/17(木) 17:26:06
いつもお世話になりありがとうございます。

以前、http://www.rescue.ne.jp/CGI-BBS/soho/cargo/20011203185447.shtml
[簡易ショッピングバスケットで受注番号] で呑兵衛@大阪さまがお答えになっていたのですが
この分に$yearをたそうと思ってやってみたのですが

#受注番号取得
($sec,$min,$hour,$mday,$month,$year) = (localtime(time))[0,1,2,3,4,5];
$month += 1;
$year += 1900;
$order_num = "$year$month$mday$hour$min$sec";

としたのですが何故かでてくるのは
2002117121211
といったように月の前の0がつきません。何故でしょう?
本当なら
20020117121211
になるはずですよね!

初歩的な質問でこの掲示板を使わせていただき申し訳ございませんが
よろしくお願いいたします。
回答者 しあわせのツボ  [削除]  投稿日 1/17(木) 18:20:22
このスクリプトだと、月以外の数字も桁合わせをしていませんね。
たとえば朝の6時とかだと、そこも詰まるはずです。

全て2桁(年は4桁)で出力させるには、
#受注番号取得
($sec,$min,$hour,$mday,$month,$year) = (localtime(time))[0,1,2,3,4,5];
$order_num = sprintf("%04d%02d%02d%02d%02d%02d", $year+1900,++$month,$mday,$hour,$min,$sec);
のようにすればよいでしょう。
質問者 まっちゃん  [削除]  投稿日 1/17(木) 18:54:03
お世話になります。
はじめまして「しあわせのつぼ」さん!
2年近くこの掲示板を見させていただいておりますが
しあわせのつぼさんの活躍ぶり! すばらしいですね!
頭が下がります。。。


ところで出来ました!!

ありがとうございます。

cargo1.22で出てくるwbformの
時刻取得と同じようにすれば良かったのですね!
一応はまねてみたのですが出来なかったのでおたずねしました。。。

教えていただいたことにより意味が分かりました! (桁数)

1から勉強し直します。 本当にありがとうございました。

このページは終了したので返信(回答)は書きこめません

Web裏技