[PHP] Esecuzione comando contenuto in stringa

  • Creatore Discussione Creatore Discussione chicchik
  • Data di inizio Data di inizio

chicchik

Nuovo Utente
5 Gen 2018
2
0
1
50
Buongiorno a tutti. Avrei bisogno di alcune info per rendere funzionale il codice sottostante (le prime 3 righe sono per simulare i dati che in realtà vengono recuperati da query precedenti).

PHP:
<?php
$riga['HomeRedCard']=1;
$riga['AwayRedCard']=0;
$se='$riga[HomeRedCard]+$riga[AwayRedCard]==0';
eval("\$se = \"$se\";");
if ($se)
{
    print "VERO";
}
else
{
    print "FALSO";
}
?>

Sto generando un sistema di statistiche su partite di calcio. In pratica dovrei eseguire un controllo (contenuto nella variabile $se e che recupero di volta in volta a seconda della statistica da un campo di un database). Trattandosi di stringa lo passo al comando eval, che però si limita solo a convertire le variabili che iniziano con il carattere $ nei rispettivi valori, ma lascia il resto (la somma e il carattere == per il controllo) ancora come stringa. Questo non permette di eseguire correttamente il controllo che ritorna sempre VERO.

Sperando di essermi espresso al meglio, ringrazio tutti in anticipo per la collaborazione.
Saluti
Enrico
 
Ultima modifica di un moderatore:
PHP:
$se = eval("$riga[HomeRedCard]+$riga[AwayRedCard]==0");

if ($se)
{
print "VERO";
}
else
{
print "FALSO";
}
 
qui ci sono gli apici
$riga['HomeRedCard']=1;
qui non c'è nulla
$se='$riga[HomeRedCard]+$.....
???????????
 

Discussioni simili