Komentari HTML dan PHP secara bersamaan

92

Saya memiliki kode ini,

    <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>

dan saya ingin berkomentar keduanya dalam satu kesempatan ... tetapi ketika saya mencoba

    <!-- <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> -->

halaman gagal - sepertinya kode PHP tidak diberi komentar ... Apakah ada cara untuk melakukan ini?

Matt Elhotiby
sumber

Jawaban:

182

Daripada menggunakan komentar HTML (yang tidak berpengaruh pada kode PHP - yang masih akan dijalankan) , Anda harus menggunakan komentar 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>
*/ ?>


Dengan itu, kode PHP di dalam HTML tidak akan dijalankan; dan tidak ada (bukan HTML, bukan PHP, bukan hasil non-eksekusinya) yang akan ditampilkan.


Hanya satu catatan: Anda tidak dapat menumpuk komentar gaya-C ... yang berarti komentar akan berakhir saat pertama kali */ditemukan.

Pascal MARTIN
sumber
Ini menambahkan sedikit lebih banyak (Anda memerlukan tag PHP serta markup komentar PHP), tetapi ini adalah cara terbaik untuk melakukan ini, saya setuju.
qJake
Tapi kemudian ketika dia menghapus komentar dia harus menghapus <? Php dan?> Taags juga yang sedikit lebih berhasil.
Flipper
4
@ Flipper: jadi? itu adalah beberapa karakter tambahan vs harus merobek setiap blok kode PHP dengan tangan.
Marc B
Menariknya, tampaknya NetBeans 8.0.2 tidak memahami ini (dan karenanya memformat kode saya dengan tidak benar meskipun ini adalah cara yang valid untuk mengomentari HTML).
Ryan
apa jalan pintas untuk melakukannya di editor teks luhur? Saya tahu ctrl + c tetapi itu tidak melakukan komentar PHP.
yadavr
42

Saya setuju bahwa solusi Pascal adalah jalan yang harus ditempuh, tetapi bagi mereka yang mengatakan bahwa itu menambahkan tugas tambahan untuk menghapus komentar, Anda dapat menggunakan trik gaya komentar berikut untuk menyederhanakan hidup Anda:

<?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 // */ ?>

Untuk menghentikan blok kode dikomentari, cukup ubah komentar pembuka menjadi:

<?php //* ?>
Nev Stokes
sumber
Bukankah solusi ini menghasilkan dua baris kosong, masing-masing dengan dua sel kosong, masih muncul di HTML?
Sparr
1
Tidak, tidak. Cobalah dan lihat! ;)
Nev Stokes
6

Saya menemukan solusi berikut cukup efektif jika Anda perlu mengomentari banyak kode HTML + PHP bersarang.

Bungkus semua konten ini:

<?php
    if(false){
?>

Here goes your PHP + HTML code

<?php
    }
?>
nick
sumber
Ini adalah satu-satunya solusi yang benar - benar berfungsi , saya tidak mengerti mengapa ini bukan jawaban teratas :) Terima kasih banyak, bung!
bviktor
Untuk 3 orang yang benar-benar bermaksud pertanyaan ini seperti yang ditanyakan: INI ^ adalah jawaban Anda;) - Catatan: Saya merekomendasikan jika (salah): - endif; sintaks, karena mungkin lebih jelas bagi pengembang berikutnya bahwa itu dimaksudkan untuk mempengaruhi markup
MJHd
4

Ini <!-- -->hanya untuk komentar HTML dan PHP tetap akan berjalan ...

Oleh karena itu hal terbaik yang akan saya lakukan adalah juga mengomentari PHP ...

Dammy Akinsiku
sumber
2

Anda hanya dapat melakukannya dengan komentar 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> -->

Cara kerja PHP dan HTML, ia tidak dapat berkomentar dalam satu gerakan kecuali Anda melakukannya:

<?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;

*/
?>
Sirip
sumber
0

Pengurai PHP akan mencari seluruh kode Anda <?php(atau <?jika short_open_tag = On), sehingga tag komentar HTML tidak berpengaruh pada perilaku pengurai PHP & jika Anda tidak ingin mengurai kode PHP Anda, Anda harus menggunakan perintah komentar PHP ( /* */atau //) .

Ehsan Khodarahmi
sumber
0

Anda juga dapat menggunakan ini sebagai komentar:

<?php
    /* get_sidebar(); */

?>
Menandai
sumber