Код:
shell_exec('libreoffice --convert-to pdf `'.$my_file.'` --headless');
Я тоже пробовал это
shell_exec('libreoffice --convert-to pdf `'.$my_file'` --headless > /dev/null');
Ошибка на сервере при выполнении выше:
Output:sh: /my_files/my_file.doc: cannot execute binary file
Примечание: Все остальные команды Linux отлично работают с shell_exec(), только команда libreoffice не работает. И на терминале Linux команда libreoffice работает нормально, просто не работает с PHP.






Вы используете обратные кавычки, которые говорят подоболочке запустить эту команду и использовать ее вывод вместо нее. Вместо этого используйте двойные кавычки, и это будет работать гораздо чаще.
Вы не заменили только обратные кавычки двойными кавычками. shell_exec('libreoffice --convert-to pdf "' . $my_file . '" --headless') -- но теперь у вас другая проблема, и, возможно, вам следует задать новый вопрос.
Я тоже пытался это сделать, не повезло. не конвертировать файл с помощью php, но может конвертировать с помощью терминала. Перепробовал все возможные варианты цитат.
Извините, мой плохой, на самом деле он работает, но сохраняет файл в веб-каталоге, я просто добавил свой путь к каталогу, чтобы сохранить преобразованный файл в команде. Благодарность
Теперь я не получаю никаких ошибок, но файлы не конвертируются
shell_exec("libreoffice --convert-to pdf ".$my_file." --headless");