sabato 20 maggio 2017

PHP: consentire esecuzione codice con tag breve

Oggi mi sono ritrovato a dover rimettere mano a delle pagine php sviluppate secoli fa, però su una nuova installazione del php sul mio pc windows (tramite il sacro wamp).
A parte a dover risistemare del codice ormai obsoleto, mi sono ritrovato subito davanti ad un birrazzo comportamento del browser, o per meglio dire del php stesso.
A video infatti, non veniva eseguito il codice php contenuto nella pagina, ma veniva proprio mostrato a video (in poche parole " il tag corto <? stampa/mostra codice php a video e non lo egegue più").

Dopo aver cercarto un attimo in rete, ho capito il perchè di questo comportamento, e risolvere la problematica è stato semplicissimo.
Ed eccomi dunque a scrivere l'ennesimo post guida tutorial :)


Come consentire l'esecuzione di codice php con tag breve


Come si evince dal titolo scelto per questo post, il succo della questione è proprio quello di far eseguire codice php contenuto nei tag brevi.

Ma che cos'è un "tag breve" in php?
Be', se come me rimetti mano a questo linguaggio di programmazione dopo secoli, per aprire un comando per stampare a video un messaggio, ti verrà naturale scrivere così:

<?
echo "ciao";
?>

Ecco, scrivere <? significa in realtà utilizzare un tag breve, o per meglio dire, un tag d'apertura breve in php (short open tag).

La sintassi completa e giusta per aprire un tag php, invece sarebbe:

<?php
echo "ciao";
?>

Aprendo infatti con il tag completo <?php, a video non si riceveranno più errori/warning o codice stampato a video.

Ora la domanda sorge spontanea: ma è possibile continuare ad utilizzare il tag d'apertura breve senza dover modificare decine e decine di pagine di codice?
La risposta è SI, per fortuna :)

Per poter abilitare i tab brevi in php, basta andare come sempre a modificare il php.ini.
Bisognerà infatti trovare la seguente riga di codice:
short_open_tag = Off
e sostituirla ovviamente con:
short_open_tag = On

Così facendo, dopo un riavvio (con wamp basta un restart all services), sarà possibile utilizzare i tag d'avvio brevi nelle pagine php, e tutti gli script già creati con quella sintassi, torneranno magicamente a funzionare.

Trovi la videoguida di quanto appena spiegato, a questo indirizzo:
https://youtu.be/-fFxYRUfKvQ

Buon coding!

Lascia un commento!