こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

phpの変数に01と格納したい。

PHPの変数に01と代入し、echoで表示させると1になってしまうのですが、01をダブルクオーテーションでくくらないで、01と表示させる方法はありますか?

投稿日時 - 2007-12-18 16:07:58

QNo.3608593

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

3人が「このQ&Aが役に立った」と投票しています

回答(5)

ANo.5

wp_

while((file_exists($fname))){
 echo "<img src=\"" . $filepath.$f.$name . "\" width=\"250\" height=\"50\">";
 $f=$f+1;
 $fname=$filepath.$f.$name;
}

上記ですが、
 echo "<img src=\"" . $fname . "\" width=\"250\" height=\"50\">";
の間違いですかね。
imgタグの中のsrcが「images/2.gif」のようになり、02.gifが呼ばれず×印になってしまう気がします。
数字($f)はフラグとして捉え、while内でパスを生成すると以下になりますな。

$f = 1; //初期化
while((file_exists($fname))){
 echo "<img src=\"" . $fname . "\" width=\"250\" height=\"50\">";
 $f=$f+1;
 $fname=$filepath.sprintf('%02d',$f).$name;
}

投稿日時 - 2007-12-19 14:02:28

ANo.4

wp_

3です。
肝心なの書き忘れてた。
echo sprintf("%02d",1);

投稿日時 - 2007-12-18 17:15:51

補足

ありがとうございます。ためしてみます。

投稿日時 - 2007-12-19 11:31:12

ANo.3

wp_

この手の質問の定番ですが
echo sprintf("%c%c",48,49);

echo chr(48) . chr(49);
でもいけますな。
普通はクォート囲みですけどね・・・

投稿日時 - 2007-12-18 17:11:23

ANo.2

01をファイルに保存しておいて、それを表示するようにすれば
”でくくらなくてもできます。

投稿日時 - 2007-12-18 16:37:23

ANo.1

>ダブルクオーテーションでくくらないで、01と表示させる

なぜダブルクォーテーションでくくらない必要があるのか書かないと
答えようがないですね。
文字列はクォーテーションでくくるというのはなんのプログラムでも
鉄則だと思いますが・・

投稿日時 - 2007-12-18 16:12:45

補足

画像ファイルがあるかをfile_exists関数で問合せ、ファイルがある間はwhile文でループさせて画像を表示させようとしています。
そのさいに、01.gifというから02.gif 03.gifのように表示させていこうかとおもったのですが、(ファイル数がいくつあるかわからないので)(ただ、いい方法かどうか疑問なところです・・・)
ダブルクオーテーションでかこむと文字になりますが、ファイル名の01を+1づつするので、数字のような扱いをするから、文字を数値のようにあつかうのが気持ち悪かったのです。
以下ソースです。

<?php
$filepath="images/";
$f="01";
$name=".gif";
$fname=$filepath.$f.$name;
if(file_exists($fname)){
?>
<img src="<?php echo $filepath . $f . $name ?>" width="250" height="50">
<?php
while((file_exists($fname))){
echo "<img src=\"" . $filepath.$f.$name . "\" width=\"250\" height=\"50\">";
$f=$f+1;
$fname=$filepath.$f.$name;
}
?>
<?php
}
else{ echo "elseだよ";
}
?>

投稿日時 - 2007-12-19 11:35:28

あなたにオススメの質問