Använder Eval () PHP Language Construct

PHP eval -konstruktionen används för att utvärdera en indatasträng som PHP och sedan bearbeta den som sådan . Eval är inte en funktion, men den fungerar som en i den meningen att den matar ut allt—utom istället för att mata ut den som text, matar den ut den som PHP-kod som ska exekveras. En användning av konstruktionen eval är att lagra kod i en databas för att köras senare

Exempel på Eval Language Construct

Här är ett enkelt exempel på kodning för språkkonstruktionen eval.

 ";  



eval("$a = "$a";");



skriv ut $a . "

”;

?>

    Detta kodexempel matar ut Mina vänner är $namn och $namn2 när de först anropas med utskriftssatsen, och det matar ut Mina vänner är Joe och Jim när den anropas andra gången efter att ha kört eval .

    Krav och egenskaper för Eval

    • Den skickade koden kan inte lindas in i öppnande och avslutande PHP-taggar.

  • Den skickade koden måste vara giltig PHP.
  • Alla påståenden måste avslutas med semikolon.

  • En return-sats avslutar kodutvärderingen.
  • All variabel definierad eller ändrad i eval finns kvar efter att den har avslutats.

  • Vilket fatalt fel inträffar i den utvärderade koden, avslutas skriptet.

  • Eftersom eval är en språkkonstruktion och inte en funktion, kan den inte användas i funktioner av högre ordning.

  • Faran med att använda Eval

    PHP-manualen avråder från användningen av konstruktionen eval, att betona att användningen är ”mycket farlig” eftersom godtycklig PHP-kod kan köras. Användare instrueras att använda något annat alternativ än eval om det inte är möjligt. Användningen av PHP eval-konstruktionen innebär säkerhetsrisker.

  • Lämna ett svar

    Relaterade Inlägg