PHP 7zip командной строки Windows не работает

В одной из моих программ мне нужно защитить файл zip и паролем с помощью php. В php, zip защита паролем поддерживается только в 5.6. Я не могу обновить версию php по какой-либо технической причине. Поэтому я загружаю 7zip-программное обеспечение в мою систему Windows и проникаю через командную строку.

это две команды

set PATH=%PATH%;C:\Program Files\7-Zip

7z a D:\test.zip d:/xampp/testdata -ptest

Это прекрасно работает в моей командной строке. Это не работает, когда я сделал с PHP

Это мой код

  $enviornment = "set PATH=%PATH%;C:\Program Files\7-Zip";
exec($enviornment , $output, $return);
$cmd = "7z a D:\test.zip d:/xampp/testdata -ptest";
exec($cmd , $output, $return);

Это оба возвращают 0 как результат.

0

Решение

Код возврата «0» означает, что программа завершилась нормально без ошибка.

Так же, как информация:

Вот список общих ненулевых (ошибочных) кодов возврата

PS: будьте осторожны с обратной косой чертой (\) в строках. В середине строки вы можете использовать один «\», но в конце вы должны использовать двойной «\\»

$str = "ABC\DEF"; //OK
$str2 = "ABCDEF\\"; //OK
0

Другие решения

Других решений пока нет …