ฉันเพิ่งเจอแท็ก PHP <?=  ?>นี้เมื่อเร็ว ๆ นี้และฉันลังเลที่จะใช้ แต่มันก็ยากที่ฉันต้องการให้คุณทำ ฉันรู้ว่ามันคือการปฏิบัติที่ดีที่จะใช้แท็กสั้น<?  ?>และว่าเราควรจะใช้แท็กเต็มรูปแบบ<?php  ?>แทน แต่สิ่งที่เกี่ยวกับเรื่องนี้อย่างใดอย่างหนึ่ง: <?=  ?>?
มันจะประหยัดการพิมพ์บางส่วนและมันจะดีกว่าสำหรับการอ่านรหัส IMO ดังนั้นแทนที่จะเป็นเช่นนี้:
<input name="someVar" value="<?php echo $someVar; ?>">
ฉันสามารถเขียนแบบนี้ได้ซึ่งสะอาดกว่า:
<input name="someVar" value="<?= $someVar ?>">
การใช้โอเปอเรเตอร์นี้ขมวดคิ้วอยู่หรือไม่?
echoนำไปสู่ XSS ได้ง่ายมากและคุณควรพึ่งพาวิธีการสะท้อนบริบทโดยเฉพาะ (เช่น: มีfunction html($x) { echo htmlentities($x,...); }และยกเลิกhtml($someVar);แทนที่จะecho $someVarใช้หรือใช้echo json_encode($x);สำหรับบริบท JS) สิ่งนี้ทำให้<?=แท็กเป็นแนวปฏิบัติที่ไม่ดีเพราะนั่นหมายความว่าคุณมีเนื้อหาตัวแปร HTML ที่ใช้ Escape ในที่อื่นและเพื่อให้สถานที่อื่น ๆ ต้องรู้ว่าตัวแปรนี้ต้องใช้ HTML อย่างน่าอัศจรรย์เพราะมันดังก้องในบริบท HTML
                