2009-12-24 22 views
5

che cosa è il significato di questa lineaCosa significa <? = Significato?

<input type=text name="name" value="<?= $name ?> 

se vogliamo dichiarare come PHP non dovremmo scrivere <?php instead of <?=

Grazie

+1

Possibile duplicato di [Cosa significa ' j08691

risposta

15

<?= sono PHP tag brevi aperte, che possono essere attivate (o disabili) tramite la direttiva short_open_tag in php.ini(citando):

Questa direttiva riguarda anche il stenografia <?=, che è identico a <? echo. L'utilizzo di questa scelta rapida richiede short_open_tag per essere on.

E:

anche se disabilitato, è necessario utilizzare la forma lunga del tag PHP aperta (<?php ?>) .

Questo significa che la vostra porzione di codice:

<input type=text name="name" value="<?= $name ?> 

equivale a questo:

<input type=text name="name" value="<?php echo $name; ?> 

Ma solo quando tag brevi aperte sono abilitati.

E, come nota a margine: i tag aperti brevi non sono sempre abilitati, infatti sono disabilitati di default con le versioni recenti di PHP.

Ciò significa che è consigliabile non dipendere da questi, almeno se si desidera distribuire l'applicazione su server su cui non si è amministratori.

+0

Sono d'accordo, fare affidamento su tag brevi richiede un cuore infranto quando si esegue la distribuzione su un server configurato per non consentirli :) –

+0

In difesa di tag brevi, sono inestimabili se si utilizza PHP come proprio livello di template. Inoltre, può essere impostato su PHP_INI_PERDIR, ad es. In .htaccess in base all'app. –

+1

"

3

utilizzando i tag brevi è generalmente disapprovato al giorno d'oggi, ma è ancora un'opzione nel php.ini. Va bene, è solo uno stile di programmazione scadente e ha ripercussioni se usi più linguaggi dinamici.

+0

Per non parlare dei tag brevi sono deprecati a partire da php6 – Matt

+0

Considerando che PHP 6 non è ancora finito (non è ancora in fase alpha), le cose possono cambiare, anche se probabilmente non lo faranno per questo specifico punto. –

+1

PHP6? chi? che cosa? dove? quando? – gahooa