この人頭いいなと思ったエピソード

英数字からなる$strをゼロサプレスの反対(0つける)で
8桁表示したいのですが、どうもダサイのしか思いつきません。
スマートな方法があれば教えてください。
#どうしたらスマートなプログラミングができるようになるんでしょう。。?

for($xx=8-length($str); $xx > 0; $xx --){
$buff = $buff."0";
}
$buff = $buff.$str;

よろしくお願いいたします。

A 回答 (3件)

sprintf じゃないやつを1つ。



$buff = substr('0'x8 . $str, -8);
    • good
    • 0
この回答へのお礼

そんなのもあるんですね。勉強になります。
ちょうど入れ違いで締め切ってしまいました。
ご回答ありがとうございました。
また何かの際にはよろしくお願いいたします。m(__)m

お礼日時:2002/07/05 19:30

こんな感じではいかがでしょう。


$str = sprintf('%08s', $str);

$strが整数ならこれ。
$str = sprintf('%08d', $str);
    • good
    • 0
この回答へのお礼

文字列でも0つけられるんですね~。
知りませんでした。ありがとうございます。

お礼日時:2002/07/05 18:52

$buff = sprintf("%08s",$str);


でできませんか?
    • good
    • 0
この回答へのお礼

そんなのありなんですね、、。
あ、ありがとうございます。

お礼日時:2002/07/05 18:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!