phpの開始タグ及び終了タグ外でのコメントの記述方法

このQ&Aのポイント
  • phpの開始タグ及び終了タグ外でのコメントの記述方法は、php形式の「/*コメント*/」や「//コメント」、またはhtml形式の「<!--コメント-->」のどちらでも問題ありません。
  • テスト結果から分かるように、phpの開始タグ及び終了タグ外でのコメントは、php形式でもhtml形式でも正常に動作します。
  • 正しいコメントの記述方法に関しては特に規定はありませんが、一貫性のためにプロジェクトごとに統一することをおすすめします。
回答を見る
  • ベストアンサー

phpの開始タグ及び終了タグ外でのコメントの記述方法?

PHPコードだけを記述した(htmlを記述していない)phpファイルがあるとします。 このphpファイルにおけるphpの開始タグ「<?php」と終了タグ「?>」の“外側”にコメント記述する場合、「/*コメント*/」又は「//コメント」のようなphp形式で記述するべきでしょうか、それとも、「<!--コメント-->」のようなhtml形式で記述するべきでしょうか? 例1(php形式コメント): /*コメント*/ <?php print “PHPコード部分” ?> /*コメント*/ 例2(html形式コメント): <!--コメント--> <?php print “PHPコード部分” ?> <!--コメント--> テストした結果としては、phpの開始タグ「<?php」と終了タグ「?>」の“外側”のコメントは、php形式でもhtml形式でも、phpプログラムは正常に動作します。ただ、本来どちらが正しいのか今後のためにも知りたいです。 この質問に関連するURL等も、ありましたらお教えください。 よろしくお願いします

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

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

  • ベストアンサー
  • root139
  • ベストアンサー率60% (488/809)
回答No.1

phpタグの外側に記述されているものは、phpのパーサには無視され、(HTMLとして)そのまま出力されますので、HTML形式で書く方が良いかと思います。CLI(Command Line Interface)で実行する際には、どちらもただコンソールにそのまま表示されるだけです。 ただ、原則的に、HTMLとして出力する意図が無い場合にはphpタグの外側には何も記述しない方が良いと思います。

参考URL:
http://jp2.php.net/manual/ja/language.basic-syntax.phpmode.php
kitty1000
質問者

お礼

root139さん ご回答、ありがとうございました。 了解しました。 >ただ、原則的に、HTMLとして出力する意図が無い場合にはphpタグの >外側には何も記述しない方が良いと思います。 今回の場合は、コピーライトを記述したかったのです。

その他の回答 (1)

  • root139
  • ベストアンサー率60% (488/809)
回答No.2

> 今回の場合は、コピーライトを記述したかったのです。 もし、HTMLやコンソールにコピーライトを出力したいのでなければ、phpタグの内側のコメントに書かれるのが良いかと。 例えば、複数のphpファイルがあり、どれもphpタグの外側にコピーライトが書かれていた場合、それらをrequireやincludeするたびにその回数分のコピーライトがHTMLやコンソールに出力されてしまいます。

kitty1000
質問者

お礼

root139さん ご回答、ありがとうございました。 参考にさせて頂きます。

関連するQ&A

  • 終了タグのコメントとしての属性

    こんにちは。 自称html中級者です。 htmlの終了タグについて質問があります。 【質問内容】 1. 終了タグにコメントとして属性をつける事の是非 2. 是の場合、その条件・理由・根拠 3. 非の場合、その条件・理由・根拠 【条件】 解析、生成、その他ツールは使用しない 【経緯】 現在、社内HPのメンテを行っております。 タグの要素が長く開始~終了が分かり辛い場合は、何らかの終了コメントをつける事が多いと思います。 例 (直前に付ける場合) <div id="hoge"> ... <!-- hoge --></div> それを見ていて気になったのですが、上記例を次のように、終了タグ内に属性として埋め込むのは如何なものでしょうか? 例 (属性名fooとする場合) <div id="hoge"> ... </div foo="hoge"> 終了タグに余計な物を入れるのが良くないのは承知しています。 が、その理由について深く述べられている記載がなかったので質問に至りました。 以上です。 ご教示よろしくお願いします。

  • htmlファイルにphpを記述したい

    初歩的な質問で申し訳ありませんが、 色々調べて見ましたが、解らなかったので質問させてください。 htmlのフレームを使いフレームのリンク先をhtmlファイルにして、 そのhtmlファイルにphpのコードも記述したいのですが、phpコードとして認識してくれません。 例)***.htmlファイル <frameset rows="100,*"> <frame src="title.html "name="logo"> </frameset> として、title.htmlファイルにphpコード記述しましたが、phpコードとして、認識してくれていないようです。。。 title.htmlの内容は <html> <head> <meta http-equiv="Content-type" content="text/html;charset=EUC-JP"> </head> <body> <center> <font size="16">****システム</font> <? echo "認識しない"; ?> </center> </body> </html> そもそもhtmlフレームを使い、htmlファイルにphpコードを、 記述することは出来ないのでしょうか? ※htmlフレームを使わずにhtmlファイルにphpコードを記述して、 認識することは確認しました。 どなたか教えてください。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHPファイルの暗号化(難読化)方法

    PHPファイルの暗号化(難読化)方法 PHPファイルを暗号化(難読化)する方法を探しています。 現在は、有料の暗号化ツールを使用せずに、 自作で暗号化(難読化)を実施可能かどうかを検討しております。 ファイル全体を暗号化したいのですが、 ファイル内容は、PHPの開始タグ(<?php)、終了タグ(?>)とHTMLタグが混在していて それをbase64_encodeなどを使用し、暗号化をかけた場合、 base64_decodeで復号をかけたデータをブラウザにて実行させたい場合は、 どのようにすればよいか困っています。 eval関数は、phpソースコードを実行するため、 PHPの開始タグ、終了タグをのぞいた、phpコードしか実行できません。 echo関数では、phpソースコードもそのまま出力されます。 PHPの開始タグ、終了タグとHTMLタグ混在していても、 ブラウザ上でphpコードの実行とHTMLタグの出力が実行できる方法はないでしょうか。 ネット上で調べてみましたが、 phpコードのみを暗号化して、eval関数で実行するものしか 発見することができませんでした。 そもそも、ファイル全体を上記のような方法で復号化⇒実行することは無理で、 ファイルの中身を解析し、タグの置き換えや、 eval関数が使用可能な処理とそうでない処理とに分けるようなことになるのでしょうか。 暗号の目的は、ファイルが一見、何を行っているのかわからなく、 そのまま処理を使いまわしできないようにしたいためです。 PHPや暗号化に詳しい人が復号化できてしまうことは、理解しております。 何か方法やアドバイス等、ございましたら、 ご回答頂ければと思います。 phpバージョンは、5.2.14です。 以上、よろしくお願いします。

    • ベストアンサー
    • PHP
  • headタグの記述について

    headタグの記述について質問させてください。 ページ作成時にPHP等で読み込みファイル(インクルードファイル?)を使用する際、 読み込まれる側のHTMLファイルは「head」「body」などの タグの記述を省きますよね(たぶん)。 これはどうしても省かなくてはいけないのでしょうか? 各ファイルに外部CSSへのリンクを張りたいのですが、 HEADタグがない場合はどうしたらいいのでしょう? こういった読み込みファイルを扱うのが初めてで、どう対応したらいいのかがわかりません。 どなたかわかる方いたら教えてください。

    • ベストアンサー
    • HTML
  • PHPのセッション終了について

    PHPのセッション終了について http://c-brains.jp/blog/wsg/08/05/22-193020.php こちらのサイトでPHPを勉強しています。 セッションについてなのですが、セッションの開始と関数の働きはつかめたのですが、セッションの終了について不明な点があります。 <?php // セッションの開始 session_start(); // セッション変数の初期化 $_SESSION = array(); // セッションファイルの削除 session_destroy(); ?> この部分なのですが、セッション変数の初期化のみの記述では何がいけないのかが分かりません。 $_SESSION = array(); のみの記述で試してみたところ、$_SESSION に含まれていたキーを呼び出しても中身を出力しなかったので、ちゃんと中身は消えたと思うのですが、この場合、session_destroy()を実行する意味はあるのでしょうか? 何卒ご教授いただけますようお願い致します。

    • ベストアンサー
    • PHP
  • PHP「中括弧内にPHP終了タグ」

    PHP参考書のサンプルプログラムに関しての質問です。 参考書は2013年のもので、プログラムの対応バージョンはPHP5.3、5.4、5.5と記載されています。 問題のプログラムはログインフォームのサンプルプログラムです。 <?php ~~略~~ if ($_SESSION['auth'] !== true) { ?> <!DOCTYPE html> <html lang="ja"> <head> ~~略~~ </head> <body> ~~略~~ </body> </html> <?php exit(); } という内容で、 if ($_SESSION['auth'] !== true) { ?> と{}内で一度PHP終了タグが入ることにとても違和感を感じ、色々調べているのですが、 この記述方法に関する情報が見つかりません。 サンプルプログラムは問題なく動作します。 HTMLの知識はあるのですが、現在PHPを勉強し始めたばかりです。 どなたか分かる方いますでしょうか よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHPの記述についてなんですが…

    レッツPHP http://php.s3.to/net/ のRSSトピックスというスクリプトを使用したいのですが、JavaのコードをHTMLに貼り付けるとRSSが右から左に動くようにPHPで記述されています。PHPのどの部分を直せば動かず固定して表示できるのか、どなたか教えて頂けませんでしょうか?宜しくお願いします。 また、表示が一件ずつではなく、5件程度表示できるようになると更に助かります。 あと、更新時間も表示できるとなお嬉しいです。 素人でずうずうしいお願いなのですが、よろしくお願いします。

  • 更新情報用PHPのタグ入力について

    http://www.hot-dining.com/free_cgi/webturn-plus.php の更新記録 (Shift_JIS仕様)というPHPを使用しています。 コメントを入力する際、コメントにHTMLタグを入力しても表示ページ ではタグ部分が破棄されてしまうのですが、HTMLタグを反映させるに はPHPのどの部分を書き換えれば良いのでしょうか? 素人なりに色々試してみたのですが、どうしてもうまくいきません。 どうぞお力を貸し下さい。よろしくお願い致します。

    • 締切済み
    • PHP
  • タグとコメント間の文字を一括削除する方法

    DreamWeaver CS3を使用しています。 仕事で、特定のタグ(<head>とか<body>とか)と、特定のコメントの間の記述をすべて削除する必要があるのですが、 このタグと文章が、htmlファイルごとに違う文言だったり、削除したくない部分と共通のワードが入っていたりして、 置換を使って一括で削除ができない状態です。 しかしファイル数が非常に多いので、手作業で削除している時間がありません。 何か手段がありませんでしょうか、教えてください。

  • php、PDOでの接続とクエリの記述位置

    php初心者です。 (DB:mysqlをphp(PDO)で操作) 最近PDOの勉強をし始めましたが、記述の際に (接続に関する部分)と(クエリに関する部分) の記述位置に関してのルールがはっきりしません。 上記2つを続けて記述をすれば問題なく動くのですが、例えば、 ----------------------------------------------------------------------- try{ $link = new PDO($db, $user, $pass); }catch(PDOException $e){ echo 'データーベースに接続できません。' . $e->getMessage(); } ----------------------------------------------------------------------- だけ先に記述しておき(接続しておいて)、その後htmlやphpの記述をはさみ、 必要な部分で以下のように(クエリ)の記述をした場合、動きません。 <?php $stmt = $link->query('SELECT * FROM booked order by rsvTime asc'); ?> <table border="1"> <tr> <th>予約時間</th> <th class="wdt_at">施術開始</th> <th class="wdt_at">施術終了</th> <th>予約未、済</th> </tr> <?php if (!$stmt) { $info = $link->errorInfo(); exit($info[2]); }                (※ここでクエリしたものを使用)             ↓ while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { print "<tr>\n"; print "<td>".htmlspecialchars($row["rsvTime"])."</td>\n"; print "<td>".htmlspecialchars($row["startTime"])."</td>\n"; print "<td>".htmlspecialchars($row["finishTime"])."</td>\n"; print "<td>".htmlspecialchars($row["kafuka"])."</td>\n"; print "</tr>\n"; } print "</table>"; ?> ■質問内容 そこで質問です。PDOの接続とクエリの記述位置やその他のルールを 詳しく教えて下さい。 よろしくお願いします。

    • ベストアンサー
    • MySQL

専門家に質問してみよう