• ベストアンサー

PHPで\" \"とかをしたくない

PHPでechoなどを使いHTMLなどを埋め込むとき、 echo "<IMG SRC=\"画像へのURL\">"; みたいに\"など"の前に\を付けねばなりません。 こういう短いHTMLなら大して苦でもないですが、何百行もある場合だと心が折れます。 これをしないでいいほかの方法はないでしょうか? 現在の環境はWindowsでPHP5を想定しています。

  • PHP
  • 回答数5
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
noname#87667
noname#87667
回答No.3

HTML出力部分はヒアドキュメントを使った方がよいと思います。 print <<< EOF <img src="hoge.jpg"><br> EOF;

その他の回答 (4)

  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.5

ヒアドキュメントを使うか、いっそphpコード領域から抜け出てしまう手もあります。 必要な変数を先にセットしておいて、変数を出力したいところだけ、echoで出力します。 長文であればあるほど、ヒアドキュメントや、""括りの変数名展開には時間を食うらしいので、特に複雑な構文を使うときなど、変数出力部分だけhtmlから抜け出てphp構文へいく方が有利なようです。 php からぬけたといっても、print文を発行している感覚で、if文やループ内、関数内でも使えます。 <?php function outpage($var){ ?> <html> いろいろhtml出力 <h1><?php echo $var; ?></h1> いろいろhtml出力 </html> <?php } outpage('test'); ?>

RockmanX
質問者

お礼

hrm_mmmさん、id357さん、nanasi1976さん、ma-tsuさんどうもありがとうございました! おかげで疑問が解決しました。

  • id357
  • ベストアンサー率29% (39/133)
回答No.4

#2 です #1 さんが正解かも、逆を言ったかもしれません。 要は、" と ' の使い分けとの意味です。

  • id357
  • ベストアンサー率29% (39/133)
回答No.2

個人的な方法ですが、 私の場合 "" の中の固定リテラルの場合 ' を 使用しています。

  • ma-tsu
  • ベストアンサー率32% (190/593)
回答No.1

echo '<IMG SRC="画像へのURL">'; じゃだめ?

関連するQ&A

  • PHPについて教えてください

    PC上に保存してある画像を表示するにはどうすればいいのでしょうか? HTMLだと<img src = "img/test.jpg"> でできますがPHPでお願いします 検索してもよくわかりませんでした 一番シンプルな方法を教えてください 解説を入れてくれると幸いです

    • 締切済み
    • PHP
  • PHPについて教えてください。

    $RSS_data = simplexml_load_file($RSS_url); foreach($RSS_data->Items->Item as $value){ $img[] = "<img src=\"{$value->Image->URL}\" width=" 200 " height=" 200 ">"; } for ($i = 0, $n = count($img); $i < $n; $i++) { if (($i / 6) == 1) { echo $img[$i] . "<br />"; } else { echo $img[$i]; } } 上記の文でパースエラーがでました。エラーのラインは $img[] = "<img src=\"{$value->SmallImage->URL}\" width=" 200 " height=" 200 ">"; です。 width=" 200 " height=" 200 "  これを取るとエラーがでずに通ります。画像のサイズを指定したいのですが、このやり方駄目ならどうすればいいのでしょうか? あと、やりたいことは画像を7つ表示したら改行して、また下に画像を7つ並べることを繰り返す。 というようにしたいのですが、このやり方だと1列目は7つでちゃんと改行されるのですが、2列めからは改行されずに画像が並んでしまいます。 どうすればいいでしょうか?どちらかだけでもいいのでわかる方教えてください。 お願いします。

    • ベストアンサー
    • PHP
  • PHPで画像を表示するプログラムについて

    実行するとランダムで取得した値を利用して、3パターンくらいの画像を切り替えて表示するPHPファイル を作成したいです! 以下のように書いてみたのですが、如何せん初心者なものでできない原因すらわかりません! 間違っているところを是非指摘していただきたいです。 宜しくお願い致します <?php $rand = rand(1,10); switch($rand){ case 1: echo("1"); break; case 2: echo("2"); break; case 3: echo("3"); break; case 4: echo("4"); break; case 5: echo("5"); break; case 6: echo("6"); break; case 7: echo("7"); break; case 8: echo("8"); break; case 9: echo("9"); break; case 10: echo("10"); break; if ($rand <= 3){ echo"<img src='a.jpg'>"; } elseif ($rand 4< || $rand >6 ) { echo"<img src='b.jpg'>"; elseif ($rand 7< || $rand >10 ) { echo"<img src='c.jpg'>"; } } ?>

    • 締切済み
    • PHP
  • phpで数字の値を画像で表示したいのですが

    お世話になります。phpを触り出している初心者です。携帯に対応させたいのですが、phpだけでいっぱいなので助けてください. 数字が0だったら非表示 2だったら2の画像・・・というようなものを作りたいのですが imgタグの埋め込み方・記述方法がよくわかりません。 ↓数字を文字で表示する方法はこれで一応やってみました。 <?php $number1 = 0; $number2 = 2; $number3 = 3; $number4 = 4; if ($number1 == true) { echo"<p>0は非表示です。"; } if ($number2 == true) { echo"<p>1の画像です。"; } if ($number3 == true) { echo"<p>2の画像です。"; } if ($number4 == true) { echo"<p>3の画像です。"; } ?> しかし画像がうまくいかずIE6では一種類の画像だけ表示されて 他の新しいブラウザでは文字化けしてる状態です。 それぞれ違う画像を当てはめる場合 どのように数値を増やして記述したらよいのでしょう? 色々試していますがこの記述も正しいのがわかりません。 <?php $gazou = imagecreatefromgif("img/01.gif"); imagegif($gazou); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"> <head> <meta http-equiv="content-Type" content="application/xhtml+xml; charset=shift_jis" /> <meta http-equiv="content-style-type" content="text/css" /> <meta http-equiv="pragma" content="no-cache" /> <meta http-equiv="cache-control" content="no-cache" /> <meta http-equiv="expires" content="0" /> <title>数字で分岐して画像を表示</title> </head> <body> <div style="text-align:center;"> <?php $number1 = 0; $number2 = 1; $number3 = 2; $number4 = 3; if ($number1 == true) { echo'<img src="gazou.php" />'; } if ($number2 == true) { echo'<img src="gazou.php" />'; } if ($number3 == true) { echo'<img src="gazou.php" />'; } if ($number4 == true) { echo'<img src="gazou.php" />'; } ?> </div> </body> </html>

    • ベストアンサー
    • PHP
  • locatin.hrefのリンク付き画像とPHP

    現在、MySQLとPHPを組み合わせたシステムを作っています。 MySQLのi5_volumeというカラムの中の数値が「1より大きい」ときにボタンを表示させ、0以下であれば表示させないようにしたいと考えています。 ボタンは画像でありlocation.hrefで別のページにリンクされています。 (OAuthで認証エラーを避けるため <a href></a> はNG) 画像からのリンクは下記のソースになります。 【画像のソース(locatin.hrefのリンク付き)】 <img src="./abc.png" onclick="location.href='sell.php?e2_id=<?php echo $price['e2_id']; ?>&time=<?php $time = date('G'); echo $time; ?>';" /> 「i5_volumeが1より大きければ画像を表示させ、0以下であれば表示させない」ためのPHPは下記です。 【規定値で画像が表示されるPHP(画像は直リンク)】 <?php IF ($my_volume['i5_volume'] >= 1) {echo "<IMG src=\"./abc.png\" >";} ELSE {echo "";} ?> 従い、 【規定値で画像が表示されるPHP(画像は直リンク)】 の画像のソース部分を 【画像のソース(locatin.hrefのリンク付き)】 に置き換えれば基本的にはいいはずなのですが、下記ではうまくいきません。エラーになり何も表示されません。 どこが悪いかご指摘頂けませんでしょうか? <?php <?php IF ($my_volume['i5_volume'] >= 1) {echo " <img src=\"./abc.png\" onclick="location.href='sell.php?e2_id=$_price['e2_id'];&time= $time = date('G'); echo $time;'" /> ";} ELSE {echo "";} ?>

    • ベストアンサー
    • PHP
  • WordPress ウィジェットからの画像挿入

    . WordPressでオリジナルテーマを作成しています。 ウィジェットのカスタムHTMLを使い画像を挿入したいのですが、メディアに入れた画像を<img src="/ドメイン/wp-content/uploads/hoge.png">で呼び出すことはできますが、テンプレートフォルダの配下につくったimgフォルダから呼び出すことはできますでしょうか? 以下のようにウィジェットのカスタムHTMLに記述しましたが画像は表示されませんでした。 <img src="<?php echo get_template_directory_uri(); ?>/images/hoge.png"> なにか良い方法がありましたら教えてください。 .

    • 締切済み
    • PHP
  • imageflow javascriptとphpで作られたスライドギャラリー

    imageflowという(http://194.95.111.244/~countzero/scripts/_myImageFlow/) javascriptとphpで作られているスライドギャラリーを htmlに組み込んでみたのですが画像が読み込まれません。 いろいろいじってみたところダウンロードしたフォルダの index.htmlの以下の部分を img src="reflect.php?img=img/img001.png" ↓ img src="img/img001.png" のようにすると画像は読み込まれますが phpを通さないと画像の鏡面反射効果が消えてしまいます。 上記2点以外は問題なく動いています。 以下テストした環境です。 windows XP php 5.2(ローカルにインストールされているもの) Apache 2.0(ローカルにインストールされているもの) Apache 2.2(ローカルにインストールされているもの) 忍者ツールズ無償版 fc2無償版 宜しくお願いします。

    • ベストアンサー
    • PHP
  • html構文をPHPの変数に正しく格納できない

    最近PHPを勉強していまして、変数の格納について、質問させていただきます。 <a href="aaa.index" onclick="window.open('bbb.php?id=ccc&adwares=ddd&url='); return false; rel='nofollow'"><img src="eee.jpg"></a> これは、とあるアフィリエイトプログラムの広告で、リンク先のページにリンクする時に、自分のidを送るというような構文(?)なのですが、 上の様な画像付リンク(アフィリエイトコード)をphpの変数に格納する場合、 <? php $url ='<a href="aaa.index" onclick="window.open(\'bbb.php?id=ccc&adwares=ddd&url=\'); return false; rel=\'nofollow\'"><img src="eee.jpg"></a>'; ?> として、 <?php echo $url ?> としましたが、新しいウインドウが出ずに、自分のサイトからのアクセスとして、 カウントされていませんでした。 どうすれば新しいウィンドウがでて、自分のサイトからのアクセスとして 認証されるでしょうか? それともそういう事は無理なのか?教えてください。

    • ベストアンサー
    • PHP
  • PHPでimgタグ

    変数の展開はみなさんに教えていただき、できるようになりました。ありがとうございます。 しかし、昨日の夜からいろいろ試してもできないことがあります。 PHPからべつのPHPを呼び出したいと考えています。 本来は違うサーバにあるPHPを実行させたいのですが、それ以前に同じサーバの同じフォルダにあるPHPまで呼び出せません・・・。 呼び出したいPHPのパスを直接URLに入力すると、正常に動くので、 パス等は間違っていないと思います。 どこがおかしいのかまったく判りません・・・。 どうか教えてください! <?php $CallText = "<img src=\"http://aaa/CGI/WriteFile.php\" width=\"0\" height=\"0\">"; echo $CallText; ?>

    • 締切済み
    • PHP
  • phpでの画像出力

    フォームでアップロードした画像(jpg)を、base64でエンコードしてテキストとしてDBに格納しています。 そのデータをDBから取り出して、PHPで出力したいのですが、上手く行きません。 下記のような手順で試しましたが、ダメでした。 ※php5とMySQLです。 $img = base64_decode("※DBから取り出したテキスト"); header("Content-type: image/jpeg"); echo $img; 尚、下記のような形では画像表示出来ましたが、出来ればphpからの出力をしたいと考えています。 <img src="data:image/jpeg;base64,※DBから取り出したテキスト" /> php初心者ですが、よろしくお願い致します。

    • ベストアンサー
    • PHP

専門家に質問してみよう