HTMLとPHPを一緒にコメント化する


91

私はこのコードを持っています、

    <tr>
      <td><?php echo $entry_keyword; ?></td>
      <td><input type="text" name="keyword" value="<?php echo $keyword; ?>" /></td>
    </tr>
    <tr>
      <td><?php echo $entry_sort_order; ?></td>
      <td><input name="sort_order" value="<?php echo $sort_order; ?>" size="1" /></td>
    </tr>

両方を一度にコメントしたいのですが…

    <!-- <tr>
      <td><?php echo $entry_keyword; ?></td>
      <td><input type="text" name="keyword" value="<?php echo $keyword; ?>" /></td>
    </tr>
    <tr>
      <td><?php echo $entry_sort_order; ?></td>
      <td><input name="sort_order" value="<?php echo $sort_order; ?>" size="1" /></td>
    </tr> -->

ページが失敗する-PHPコードがコメント化されていないようです...これを行う方法はありますか?

回答:


179

HTMLコメント(PHPコードには影響せず引き続き実行されます)を使用する代わりに、PHPコメントを使用する必要があります。

<?php /*
<tr>
      <td><?php echo $entry_keyword; ?></td>
      <td><input type="text" name="keyword" value="<?php echo $keyword; ?>" /></td>
    </tr>
    <tr>
      <td><?php echo $entry_sort_order; ?></td>
      <td><input name="sort_order" value="<?php echo $sort_order; ?>" size="1" /></td>
    </tr>
*/ ?>


これにより、HTML内のPHPコードは実行されません。何も表示されません(HTML、PHP、非実行の結果ではありません)


ただ1つの注意:Cスタイルのコメントをネストすることはできません...つまり、コメントは最初に*/出現した時点で終了します。


これはもう少し追加します(PHPタグとPHPコメントマークアップが必要です)が、これはこれを行うための最良の方法であることに同意します。
qJake 2011

しかし、彼がコメントを外すと、彼は<?phpと?>のタグも削除する必要があり、これはもう少し作業です。
Flipper 2011

4
@フリッパー:そう?PHPコードのすべてのブロックを手動で削除する必要があるのに対し、余分な数文字です。
マークB

興味深いことに、NetBeans 8.0.2はこれを理解していないようです(したがって、これはHTMLをコメント化する有効な方法ですが、コードを誤ってフォーマットします)。
ライアン

崇高なテキストエディターでそれを行うショートカットは何ですか?私はctrl + cを知っていますが、それはPHPコメントをしません。
yadavr 2017

42

Pascalの解決策が進むべき道であることに同意しますが、コメントを削除するための追加のタスクが追加されると言う人は、次のコメントスタイルのトリックを使用して人生を簡素化できます。

<?php /* ?>
<tr>
      <td><?php echo $entry_keyword; ?></td>
      <td><input type="text" name="keyword" value="<?php echo $keyword; ?>" /></td>
    </tr>
    <tr>
      <td><?php echo $entry_sort_order; ?></td>
      <td><input name="sort_order" value="<?php echo $sort_order; ?>" size="1" /></td>
    </tr>
<?php // */ ?>

コードブロックされているコードブロックを停止するには、開始コメントを次のように変更します。

<?php //* ?>

このソリューションでは、2つの空の行が生成され、それぞれに2つの空のセルが含まれますが、HTMLには表示されますか?
Sparr 2014

1
いいえ、ありません。試して見てください!;)
Nev Stokes

6

ネストされた多くのHTML + PHPコードにコメントする必要がある場合は、次の解決策が非常に効果的であることがわかりました。

これにすべてのコンテンツをラップします。

<?php
    if(false){
?>

Here goes your PHP + HTML code

<?php
    }
?>

これが実際に機能する唯一の解決策です。なぜこれがトップアンサーにならないのかわかりません:)どうもありがとう!
bviktor 2018

この質問を実際に意味する3人の場合:この^があなたの答えです;)-注:if(false)をお勧めします:-endif; 構文、次の
開発者にとって

4

これ<!-- -->はHTMLコメント専用であり、PHPはとにかく実行されます...

したがって、私が行う最善のことは、PHPをコメントアウトすることでもあります...


2

これを行うには、PHPコメントを使用する必要があります。

 <!-- <tr>
      <td><?php //echo $entry_keyword; ?></td>
      <td><input type="text" name="keyword" value="<?php //echo $keyword; ?>" /></td>
    </tr>
    <tr>
      <td><?php //echo $entry_sort_order; ?></td>
      <td><input name="sort_order" value="<?php //echo $sort_order; ?>" size="1" /></td>
    </tr> -->

PHPとHTMLが機能する方法では、以下のことを行わない限り、一気にコメントすることはできません。

<?php

/*

echo <<<ENDHTML
 <tr>
          <td>{$entry_keyword}</td>
          <td><input type="text" name="keyword" value="{echo $keyword}" /></td>
        </tr>
        <tr>
          <td>{$entry_sort_order}</td>
          <td><input name="sort_order" value="{$sort_order}" size="1" /></td>
        </tr>
ENDHTML;

*/
?>

0

PHPパーサーはコード全体を検索するため<?php(または<?short_open_tag = Onの場合)、HTMLコメントタグはPHPパーサーの動作に影響を与えません。また、PHPコードを解析しない場合は、PHPコメントディレクティブ(/* */または//)を使用する必要があります。。


0

これをコメントとして使用することもできます。

<?php
    /* get_sidebar(); */

?>
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.