Can’t use function return value in write context in…

if (empty(trim($var))) …


Può capitare in PHP che spunti fuori questo errore:
Fatal error: Can't use function return value in write context in.
cosa fare?

Nel caso in cui usiate il metodo empty nella riga che genera errore
if (empty(trim($var)))
   // Some code

la comprensione del problema è immediata: sulla documentazione ufficiale (empty()) è specificato che il metodo empty() accetta come argomento solo una VARIABILE (attenzione, variabile != valore) e qualsiasi altra cosa genera errore.
In sostanza all’interno di empty potete mettere qualsiasi cosa inizi con il $ (dollaro) ma nessun altro metodo.

Quindi per risolvere il problema
Fatal error: Can't use function return value in write context in...
a riga
if (empty(trim($var)))
   // Some code

il codice diverrà:
$trimmedVar = trim($var);
if (empty($trimmedVar))
   // Some code

o più concisamente:
if (!trim($var))
   // Some code

Lo stesso messaggio di errore può avvenire anche con altri metodi che necessitano di variabili in input, in questi casi la soluzione più valida è la prima.


Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *