>백엔드 개발 >PHP 문제 >PHP의 일반적인 명령 실행 함수를 살펴보겠습니다.

PHP의 일반적인 명령 실행 함수를 살펴보겠습니다.

WBOY
WBOY앞으로
2022-05-20 11:56:123697검색

이 기사는 PHP에 대한 관련 지식을 제공합니다. 주로 PHP의 몇 가지 일반적인 명령 실행 기능을 소개합니다. 명령 실행 기능을 사용하여 운영 체제 명령을 함께 살펴보겠습니다. 돕다.

PHP의 일반적인 명령 실행 함수를 살펴보겠습니다.

추천 연구: "PHP Video Tutorial"

PHP 명령 실행 기능은 코드 실행 취약점과 결합하여 자주 사용됩니다. 명령 실행 기능은 공격을 시작하기 위해 운영 체제 명령을 실행하는 데 사용됩니다. 일반적으로 사용되는 몇 가지를 간단히 공유합니다. PHP 명령 실행 함수

system();

system() 함수는 시스템 명령을 실행하고 명령 실행 결과를 인터페이스에 직접 출력할 수 있습니다.

system('ls');

exec();

exec() 함수는 시스템 명령을 실행할 수 있지만 결과를 직접 출력하지는 않지만 실행 결과를 배열

exec( 'ls' , $result ) ;
                                                                                                                 out out out out of 실행 결과

shell의 exec's'' out's ‐     ‐ ‐ out‐out

shell_exec() 함수는 시스템 명령을 실행할 수 있지만, 실행 결과를 직접 출력하지 않고, 대신 시스템 명령의 실행 결과를 저장하기 위해 문자열 형식의 변수를 반환합니다. 매개변수

echo shell_exec('ls');

passthru();

passthru() 함수는 시스템 명령을 실행하고 실행 결과를 페이지에 출력할 수 있습니다. system() 함수와 달리 바이너리 데이터를 지원하며 파일 및 그림에 더 많이 사용됩니다.

passthru('ls');

popen() 함수는 시스템 명령을 실행할 수 있지만 실행 결과를 출력하지는 않지만, 실행 결과를 저장하기 위해 리소스 유형 변수를 사용합니다. 명령의 실행 결과를 읽으려면 fread() 함수와 함께 사용해야 합니다.

$result = popen('ls', 'r');

매개변수 1: 문자열 유형 실행해야 함 数 매개변수 2: 문자열 유형, 모드
반환 값: 리소스 유형, 명령 실행 결과
Echo Fread ($ 결과, 100) 2: int 유형, n 바이트 읽기
        반환 값: 문자열 유형, 파일 내용 읽기

echo fread(popen('ls','r'),100);



Backticks``

Backticks는 시스템 명령을 실행할 수 있지만 결과를 출력하지는 않으며, 대신 시스템 명령의 실행 결과를 저장하는 데 사용되는 문자열 형식의 변수를 반환합니다. 단독으로 사용하거나 다른 명령 실행 기능과 함께 사용하여 매개변수

echo `ls`;

의 필터링 조건을 우회할 수 있습니다. 권장 학습: "

PHP 비디오 튜토리얼

위 내용은 PHP의 일반적인 명령 실행 함수를 살펴보겠습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제