Saya telah menemukan tag PHP ini <?= ?>
baru-baru ini dan saya enggan menggunakannya, tetapi sangat gatal sehingga saya ingin Anda menerimanya. Aku tahu itu adalah praktik buruk untuk menggunakan tag pendek <? ?>
dan bahwa kita harus menggunakan tag penuh <?php ?>
sebaliknya, tapi bagaimana satu ini: <?= ?>
?
Ini akan menghemat pengetikan dan akan lebih baik untuk keterbacaan kode, IMO. Jadi alih-alih ini:
<input name="someVar" value="<?php echo $someVar; ?>">
Saya bisa menulis seperti ini, yang lebih bersih:
<input name="someVar" value="<?= $someVar ?>">
Apakah menggunakan operator ini disukai?
echo
mengarah sangat mudah ke XSS, dan Anda harus lebih bergantung pada metode gema konteks khusus (yaitu: memiliki function html($x) { echo htmlentities($x,...); }
dan html($someVar);
bukan sebagai gantinya echo $someVar
atau menggunakan echo json_encode($x);
untuk konteks JS). Ini kemudian membuat <?=
tag menjadi praktik yang buruk karena itu berarti Anda telah melepaskan HTML dari konten variabel di tempat lain, dan agar tempat lain secara ajaib tahu bahwa variabel ini harus di-HTML-kan karena itu digema dalam konteks HTML.