evalEsegue una stringa come codice PHP
&reftitle.description;
mixedevalstringcode
Esegue la data stringa code come codice PHP.
eval è un costrutto del linguaggio molto pericoloso
perché permette l'esecuzione di codice PHP arbitrario. Il suo uso è pertanto
sconsigliato. Se si è certi che non esistono altre soluzioni al posto di usare
eval, fare particolare attenzione a non inserire codice fornito
dall'utente senza averlo preventivamente validato.
&reftitle.parameters;
code
Codice PHP valido da eseguire.
Il codice non deve essere incluso nei tag
di apertura e chisura di PHP. Ad esempio
'echo "Ciao!";' è corretto invece di
'<? echo "Ciao!"; >'. È comunque possibile uscire e
rientrare nella modalità PHP attraverso l'utilizzo dei tag PHP appropriati, ad esempio:
'echo "In PHP mode!"; ?>In HTML mode!<? echo "Back in PHP mode!";'.
Oltre a questo, valgono tutte le regole del codice PHP. Questo include l'inserimento al termine
di ogni istruzione del punto e virgola.
'echo "Ciao!"' per esempio causerà un parse error, mentre
'echo "Ciao!";' funzionerà.
Un'istruzione return causa immediatamente la terminazione del codice
in corso di esecuzione dalla eval.
L'ambito di esecuzione è ristretto a dove eval viene chiamata. Quindi qualsiasi
variabile definita o modificata all'interno di eval rimarrà visibile dopo
la sua terminazione.
&reftitle.returnvalues;
eval ritorna &null; a meno che
non venga richiamato return nel codice da valutare, in tal caso
il valore passato a return viene ritornato. Se avviene un
parse error nel codice valutato, eval ritorna
&false; e l'esecuzione del codice seguente continua normalmente. Non
è possibile catturare un parse error in eval
usando set_error_handler.
&reftitle.examples;
Esempio di eval - semplice unione di testo
]]>
&example.outputs;
&reftitle.notes;
¬e.language-construct;
&tip.ob-capture;
In caso di fatal error nel codice valutato, l'intero script termina.
&reftitle.seealso;
call_user_func