PHP 호출 리눅스 명령 세부 사항
/*
PHP 튜토리얼에서 리눅스 명령을 호출 하는 함수는
문자열 exec (명령 문자열, 문자열 [배열], int [return_var]);
로
EXEC ("Vpopmail");
에코 exec ('whoami');
하나 더 예를 들어 봐
함수 exec_enabled () 없음
$disabled = 분해 (',', Ini_get ('disable_functions'));
반환! in_array ('exec', $disabled);
}
<? php
$tmp = EXEC ("C:imagegm.exe C:imagefile1.tiff c:imagefile1.jpg 변환", $results);
? >
다른 순서는
PHP 함수 시스템 () 통해 시스템 명령을 호출합니다.
문자열 시스템 (String $command [, int 및 $return _var])
인스턴스
시스템 (' 별표-VVVVVVVVVVVC ');
시스템 () 같은 함수 주어진 명령과 출력 결과의 버전을 실행 하는 C입니다. 이 시스템 ()에 대 한 호출도 PHP를 서버 모듈로 실행 하는 경우 웹 서버의 각 출력 줄에 출력 버퍼를 자동으로 새로 하려고 합니다. 경우에 명령을 실행 하 고 모든 어떤 간섭 없이 뒤에서 직접 명령 데이터 통과, PassThru () 함수를 사용 합니다.
$last _line = 시스템 ('ls', $retval);
함수 My_exec ($cmd, $input = ')
{$proc = proc_open ($ CMD, 배열 (0 = > 배열 ('파이프', 'r'), 1 = > 배열 ('파이프', 'w'), 2 = > 배열 ('파이프', 'w')), $pipes);
fwrite ($pipes [0], $input); fclose ($pipes [0]);
$stdout = stream_get_contents ($pipes [1]); Fclose ($pipes [1]);
$stderr = stream_get_contents ($pipes [2]); Fclose ($pipes [2]);
$rtn = proc_close ($PROC);
배열을 반환 (' 표준 ' = > $stdout,
'열려진' = > $stderr,
'반환' = > $rtn
);
}
Var_export (my_exec (' 에코-e $ (</stdin) | wc-l ',' Hnelnlo ');
예제 3
$cmd = "날짜";
$output = 시스템 ($CMD);
printf ("시스템 출력: $outputn");
EXEC ($cmd, $results);
printf ("Exec 출력: {$results [0]} n");
리눅스 명령어를 호출 하는 PHP에 대 한 사용 권한 문제
어느 시점에서 허가 루트, 호출 하려는 PHP 실행 타임된 작업을 사용할 수 있습니다.
PHP 함수 시스템 () 통해 시스템 명령을 호출합니다
물론, 부모 폴더에 파일을 저장 한 다음 변경 부모 폴더 권한 775, 그룹 구성원 쓰기 권한을 아파치는 디렉토리 아래 모든 파일을 덮어쓸이 그룹에 속한 아파치를 추가 PHP를 아파치 사용자로 일반적으로 실행 그룹은 최상 하지 루트, 다른 일반 사용자 그룹에 폴더를 변경할 수 있습니다.
아파치/php 실행 사용자 메서드를 변경 하는 것이 안전
*/