2013-01-14 11 views
7

Czy jest teraz zupełnie i całkowicie bezpieczne w użyciuCzy korzystanie z skrótów PHP echo jest teraz bezpieczne?

<?=$var ?> 

zamiast

<?php echo $var; ?> 
+0

w PHP 5.4 i powyżej. Krótkie tagi są zawsze włączone. – cgTag

+0

Nigdy nie wiedziałem, że jest to niebezpieczne. Czy możesz wskazać mi dokumentację na ten temat? – NappingRabbit

+0

Powiązane, ale, jak mówi OP, stary: http://stackoverflow.com/questions/200640/are-php-short-tags-acceptable-to-use – halfer

Odpowiedz

12

Nie użyłbym słów "całkowicie" i "całkowicie", ale z PHP5.4 "short-open-and-echo" -syntax jest częścią rdzenia, a więc zawsze dostępne. Przypomnij, że mówię tylko o <?= ?>, a nie o "zwykłych" tagach z krótkim otwieraniem <? ?>.

+1

Wiele, wiele nadchodzących uptów. – Kermit

-2

Tak. Od PHP 5.4 znaczniki echa są zawsze włączone, chyba że host je dezaktywuje.

+2

Nie, to już niemożliwe. – KingCrunch

+0

Oh neato. Dziś nauczyłem się czegoś nowego. –

5

Tak. Od wersji PHP 5.4.0 od 01 marca 2012 można użyć krótkiego tagu. Od php 5.4 change log,

<?= is now always available regardless of the short_open_tag setting. 

To był Ogólna poprawa.

Więc jeśli masz PHP 5.4, możesz użyć składni <?=.

2

Tak. Nie ma prawdziwego problemu z używaniem <?=$var?>, ale jeśli chcesz być całkowicie przygotowany na hosta, który nie ma tego włączonego, możesz napisać go przy użyciu pełnej instrukcji.

Zazwyczaj można włączyć tę funkcję, nawet jeśli jest wyłączona.

0

Lepiej jest zawsze używać zwykłego tagu <?php. W ten sposób masz pewność, że twoje skrypty są zawsze kompatybilne z każdą instalacją PHP, niezależnie od ustawień PHP lub php.ini.

Jeszcze ważniejsze, jeśli tworzysz kod, który ma być udostępniony, na przykład bibliotekę.

Powiązane problemy