현재 위치: > 함수 카테고리 모음> proc_open

proc_open

명령을 실행하고 입력/출력에 사용되는 파일 포인터를 엽니 다.
이름:proc_open
분류:프로그램 실행
사용 언어:php
한 줄 설명:명령을 실행하고 입력/출력에 사용되는 파일 포인터를 엽니 다.

함수 이름 : proc_open ()

함수 설명 : proc_open () 함수는 명령을 실행하고 입력/출력에 사용되는 파일 포인터를 엽니 다.

해당 버전 : PHP 4> = 4.3.0, PHP 5, PHP 7

구문 : Resource Proc_Open (String $ cmd, Array $ descriptorspec, Array & $ Pipes [, String $ cwd [, Array $ env [, array $ else_options]]])))).

매개 변수 :

  • CMD : 실행되는 명령은 간단한 명령 또는 명령 및 매개 변수가 포함 된 배열 일 수 있습니다.
  • Descriptorspec : 입력/출력을위한 파일 포인터가 포함 된 배열. 각 요소는 다음의 주요 값을 포함하는 배열입니다.
    • 0 : 표준 입력 (stdin)
    • 1 : 표준 출력 (STDOUT)
    • 2 : 표준 오류 (STDERR)
  • 파이프 : 입력/출력을 위해 모든 파일 포인터의 배열을 저장합니다.
  • CWD (선택 사항) : 명령을 실행 해야하는 현재 작업 디렉토리
  • ENV (선택 사항) : 환경 변수를 설정하는 데 사용되는 배열
  • 기타_options (선택 사항) : 추가 옵션이 포함 된 연관 배열. 지원되는 옵션은 다음과 같습니다.
    • suppress_errors : 표준 오류 스트림으로 오류 출력 전송을 비활성화합니다. 기본값은 False입니다.

반환 값 : 성공시 리소스 유형의 프로세스 식별자를 반환하고 실패시 False를 반환합니다.

샘플 코드 :

 // 执行一个简单的命令并读取输出$descriptorspec = array( 0 => array("pipe", "r"), // 标准输入1 => array("pipe", "w"), // 标准输出2 => array("pipe", "w") // 标准错误); $process = proc_open('ls -l', $descriptorspec, $pipes); if (is_resource($process)) { // 读取输出echo stream_get_contents($pipes[1]); // 关闭文件指针fclose($pipes[0]); fclose($pipes[1]); fclose($pipes[2]); // 等待进程结束,并获取返回值$return_value = proc_close($process); }

이 예에서는 proc_open ()을 사용하여 간단한 명령 "ls -l"을 실행하고 파일 포인터를 사용하여 명령의 출력을 읽습니다. 적절한 descriptorspec 배열을 설정하면 입력/출력에 대한 파일 포인터 유형을 지정할 수 있습니다. 이 예에서는 표준 입력을 하나의 파이프 라인으로 리디렉션하고 표준 출력 및 표준 오류를 다른 두 파이프 라인으로 리디렉션합니다. 그런 다음 Stream_get_contents () 함수를 사용하여 표준 출력 파이프 라인에서 명령의 출력을 읽습니다. 마지막으로 모든 파일 포인터를 닫고 Proc_Close ()를 사용하여 프로세스가 종료 될 때까지 기다렸다가 반환 값을 얻습니다.

유사한 함수
  • 쉘 환경을 통해 명령을 실행하고 전체 출력을 문자열로 반환합니다. shell_exec

    shell_exec

    쉘환경을통해명령을실행하고전체출력을문자
  • shell 명령에 사용할 수있는 매개 변수로 문자열을 트랜스 코딩합니다. escapeshellarg

    escapeshellarg

    shell명령에사용할수있는매개변수로문
  • Proc_open이 열린 프로세스를 처치하십시오 proc_terminate

    proc_terminate

    Proc_open이열린프로세스를처치하
  • 명령을 실행하고 입력/출력에 사용되는 파일 포인터를 엽니 다. proc_open

    proc_open

    명령을실행하고입력/출력에사용되는파일포
  • 외부 프로그램을 실행하십시오 exec

    exec

    외부프로그램을실행하십시오
  • proc_open () 함수에 의해 열린 프로세스에 대한 정보를 얻습니다 proc_get_status

    proc_get_status

    proc_open()함수에의해열린프로
  • Shell Metacharacter 탈출 escapeshellcmd

    escapeshellcmd

    ShellMetacharacter탈출
  • 외부 프로그램 및 디스플레이 출력을 실행합니다 system

    system

    외부프로그램및디스플레이출력을실행합니다
인기 기사