Maison > développement back-end > tutoriel php > Comment désactiver l'exemple de fonction eval() en php

Comment désactiver l'exemple de fonction eval() en php

高洛峰
Libérer: 2023-03-04 12:52:02
original
1655 Les gens l'ont consulté

La fonction php eval() opère sur le tableau :

<?php
$data = "array(&#39;key1&#39;=>&#39;value1&#39;,&#39;key2&#39;=>&#39;value2&#39;,&#39;key3&#39;=>&#39;value3&#39;,&#39;key4&#39;=>&#39;value4&#39;)";
$arr = eval("return $data;");
var_dump($arr); //array
?>
Copier après la connexion

Résultat d'exécution :

array(4) { ["key1"]=> string(6) "value1" ["key2"]=> string(6) "value2" ["key3"]=> string(6) "value3" ["key4"]=> string(6) "value4" }
Copier après la connexion

De nombreuses méthodes sur Internet qui utilisent Disable_functions pour désactiver eval sont fausses !

En fait, eval() ne peut pas être désactivé en utilisant Disable_functions dans php.ini :

car eval() est une construction de langage et non une fonction

eval est zend , ce n'est donc pas une fonction PHP_FUNCTION ;

Alors, comment PHP interdit-il l'évaluation ?

Si vous souhaitez désactiver eval, vous pouvez utiliser l'extension php Suhosin :

Après avoir installé Suhosin, chargez Suhosin.so dans php.ini et ajoutez suhosin.executor.disable_eval = on

Merci d'avoir lu, j'espère que cela pourra vous aider, merci pour votre soutien à ce site !

Pour en savoir plus sur PHP, comment désactiver la fonction eval(), des exemples et des articles connexes, veuillez faire attention au site Web chinois de PHP !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal