[PHP] Esecuzione comando contenuto in stringa

Discussione in 'PHP' iniziata da chicchik, 5 Gennaio 2018.

  1. chicchik

    chicchik Nuovo Utente

    Registrato:
    5 Gennaio 2018
    Messaggi:
    2
    Mi Piace Ricevuti:
    0
    Punteggio:
    1
    Sesso:
    Maschio
    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: 5 Gennaio 2018
  2. tess

    tess Nuovo Utente

    Registrato:
    20 Dicembre 2017
    Messaggi:
    47
    Mi Piace Ricevuti:
    4
    Punteggio:
    8
    Sesso:
    Femmina
    Occupazione:
    Web Developer
    Località:
    FG
    PHP:
    $se = eval("$riga[HomeRedCard]+$riga[AwayRedCard]==0");

    if (
    $se)
    {
    print 
    "VERO";
    }
    else
    {
    print 
    "FALSO";
    }
     
  3. marino51

    marino51 Utente Attivo

    Registrato:
    28 Febbraio 2013
    Messaggi:
    2.548
    Mi Piace Ricevuti:
    126
    Punteggio:
    63
    Occupazione:
    free lance
    Località:
    Lombardia
    qui ci sono gli apici
    $riga['HomeRedCard']=1;
    qui non c'è nulla
    $se='$riga[HomeRedCard]+$.....
    ???????????
     
Sto caricando...

Condividi questa Pagina