다음 thinkphp Framework튜토리얼 칼럼에서는 Thinkphp5.0.x 명령으로 필터를 실행하는 방법을 소개하겠습니다. 도움이 필요한 친구들에게 도움이 되길 바랍니다!
Thinkphp5.0.x 명령 실행
도 명령 실행에 <span style="color:#c7254e;">call_user_func()</span>
를 사용하고 Request 클래스의 filterValue 함수에서 이를 실행합니다. [권장사항: thinkphp 비디오 튜토리얼]
filterValue를 호출하는 함수를 먼저 검색하세요.
FilterValue()가 Request 클래스의 cookie() 및 input() 함수에서 호출되었습니다.
쿠키 함수 호출을 검색했지만 결과를 찾을 수 없습니다. 입력 호출 검색:
실행 기능에서 후속 조치:
Step1
in $request = is_null($request) ? () : $request ;는 요청 생성자를 실행합니다. 이때 생성자에서 file_get_contents('php://input')를 통해 POST 내용을 가져와서 $request->input 변수에 할당했습니다.
Step2
$dispatch
= self::routeCheck($요청 , $config );
at RouteCheck에서는 Route 클래스의 check 함수가 입력됩니다:
check 함수는 $request->method()를 호출합니다:
수신 매개변수의 기본값은 false입니다. var_method => _method를 얻기 위해 elseif가 실행됩니다. 이때, __construct를 전달하면 $_POST가 post로 제출된 데이터를 가져오고 POST 배열을 탐색할 수 있습니다. 요청 클래스의 멤버를 덮어쓰기 위한 생성 함수
다음 활용 프로세스에는 디버그 모드가 켜져 있어야 합니다.
param()은 run()에서 호출됩니다.param 함수를 따르세요:
/**
* 현재 요청의 매개변수 가져오기
* @access public
* @param string|array $name 변수 이름
* @param 혼합 $default
* @return 혼합
*/
먼저 if 조건을 입력하고 들어오는 매개변수가 true인 경우 메소드 메소드
method()를 따르세요. :
Execute 다음 문을 실행합니다. 원래 요청 유형
$_SERVER['REQUEST_METHOD']을 가져오고 반환 값은 POST
로 매개변수로 반환합니다. $method=POST
그러면 스위치가 실행됩니다. POST 부분에서 post 기능을 입력하세요:
post 기능:
/**
* @return 혼합
*/
매개변수 전달:그런 다음 $content에 복사한 다음 $_POST json 형식인지 여부를 판단합니다. json이면 json_decode를 수행해야 하고, 그렇지 않으면 $_POST
값을 직접 사용하여 입력 방법을 입력합니다. : 들어오는 매개 변수는 POST에서 얻은
Name입니다. false인 경우 입력은 데이터를 반환하고 post()는param() 함수를 직접 반환합니다.
$vars =$this
->
post(false); getFilter 입력:
getFilter에서 $filter = $filter ?: $this->filter;은 $request 클래스의 필터 변수 값을 가져옵니다(이전에는 구문 순회에서 다루었습니다) ) ), 그리고 입력 함수
에 대한 반환 값으로 array_walk_recursive($data, [$this, 'filterValue']을 계속 실행합니다. , $filter );
array_walk_recursive() 함수는 배열의 각 요소에 사용자 정의 함수를 적용합니다. 함수에서 배열의 키 이름과 키 값은
$filters=systemtaken과 동일한 매개변수 입니다. $data의 각 변수는 $value로 전달됩니다. . 촬영할 때 ccc=ipconfig인 경우 system을 call_user_func의 첫 번째 매개변수로 사용하고, 두 번째 매개변수로 ipconfig을 사용하면 명령이 실행됩니다.
실행 결과:
위 내용은 TP5.0.x 명령이 필터를 실행하는 방법에 대해 이야기합시다!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!