PHP mysqldump를 사용하기 위해 PHP 스크립트를 사용하기 전에 전체 데이터베이스를 백업하고 싶다. 이 같은 성공적인 있다면 mysqldump가 파일을 생성 할 수 없을 때 shell_exec()가 에러를 반환하지 않는다.
나는() shell_exec와 mysqldump는 명령을 실행하고 확인하려 :$command = 'mysqldump -u username -ppassword database > /path/database.sql';
$result = shell_exec($command);
if(!is_null($result)) {
echo 'Error during backup';
else {
echo 'Database saved';
// rest of the php script to modify the database (create/drop tables etc)
}
하지만 $ 결과가 나는 경로를 제공하는 경우에도, alwas null 인 것으로 나타났습니다 파일을 작성할 수 없습니다 (기존 디렉토리가 없거나 쉘 프롬프트에서 권한이 거부되어야하는 항목).
무엇이 누락 되었습니까? the manual에서
'system()'의 두 번째 인자가 스크립트 출력이 아니라면 리턴 값입니다. 이름은 제쳐두고, 당신의 코드는 괜찮지 만, 나는 미래의 독자들에게 혼동을 피하기 위해 그것을 분명히해야한다고 생각했다. –
안녕하세요. 6 행에 구문 오류가 있습니다 (괄호가 없습니다). – Tegos