> 백엔드 개발 > PHP 튜토리얼 > php_php 예제에서 eval() 함수 예제를 비활성화하는 방법

php_php 예제에서 eval() 함수 예제를 비활성화하는 방법

WBOY
풀어 주다: 2023-03-03 06:56:01
원래의
1175명이 탐색했습니다.

php eval() 함수는 배열에서 작동합니다.

<&#63;php
$data = "array('key1'=>'value1','key2'=>'value2','key3'=>'value3','key4'=>'value4')";
$arr = eval("return $data;");
var_dump($arr); //array
&#63;>
로그인 후 복사

실행 결과:

array(4) { ["key1"]=> string(6) "value1" ["key2"]=> string(6) "value2" ["key3"]=> string(6) "value3" ["key4"]=> string(6) "value4" }


로그인 후 복사

인터넷의 많은 사람들은 eval을 비활성화하기 위해 비활성화 기능을 사용하는 것이 잘못되었다고 말합니다!

실제로 php.ini의 비활성화 함수를 사용하여 eval()을 비활성화할 수 없습니다.

eval()은 함수가 아니라 언어 구성이기 때문입니다

eval은 zend이므로 PHP_FUNCTION 함수가 아닙니다.

그렇다면 PHP에서 eval을 비활성화하는 방법은 무엇입니까?

평가를 비활성화하려면 PHP 확장 Suhosin을 사용할 수 있습니다:

수호신 설치 후 php.ini에 Suhosin.so를 로딩하고 suhosin.executor.disable_eval = on을 추가하세요

읽어주셔서 감사합니다. 도움이 되기를 바랍니다. 이 사이트를 지원해 주셔서 감사합니다!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿