Я пытаюсь зашифровать файл с помощью GPG через exec (). Файл, который я хочу зашифровать, создается перед запуском этой команды.
$fesha = date("mdY");
$file_name = "FILE_$fesha.txt";
$myfile = fopen($file_name, "w");
//MySQL query
fwrite($myfile, $txt);
fclose($myfile);
$password = "*password*";
$commando = "gpg --encrypt --passphrase=\"$password\" --armor --batch --yes --trust-model always -r **[email protected]** \"$file_name\"";
echo shell_exec($commando);
echo $commando;
Я запускаю PHP-скрипт, наблюдая за папкой «output», текстовый файл создается без проблем, но asc-файл никогда не создается.
Если я вручную запускаю вывод из файла PHP (фактическая команда GPG), зашифрованный файл создается без каких-либо проблем или сообщений об ошибках.
Пытаюсь решить эту проблему пару часов.
Я попытался использовать классовый подход ($ gpg = new gnupg ();), но мне не удалось установить все модули / расширения PECL.
Любая помощь будет оценена.
pass_thru()
? - php.net/manual/en/function.passthru.php - person Jeremy Harris   schedule 21.10.2019