PHP - синтаксис функции exec() для вызова другого файла php

Этот вопрос касается:

Бесплатный (желательно) конвертер PHP RTF в HTML?

Я пытаюсь выполнить эту последнюю строку кода в своем php:

exec(rtf2htm file.rtf file.html)

Я понимаю, какие параметры должны идти в скобках, только не знаю, как это написать. Я просмотрел несколько примеров вместе с документацией по php и все еще остаюсь в замешательстве, так может ли кто-нибудь показать мне, как это написано? rtf2htm относится к файлу PHP, который преобразует RTF в HTML.

В конечном итоге я пытаюсь преобразовать содержимое многочисленных документов RTF в HTML, сохраняя форматирование, но не создавая теги, такие как <head> или <body>, которые такие программы, как Word или TextEdit, генерируют при преобразовании в HTML.


person flatline_    schedule 07.06.2013    source источник
comment
exec(rtf2htm файл.rtf файл.html);   -  person Orangepill    schedule 07.06.2013
comment
Только @Orangepill rtf2htm выдает мне ошибку not recognized as internal or external command. Моя среда может быть настроена неправильно, я не знаю, так как я относительно новичок в кодировании. rtf2htm\rtf2tm.php работает, но открывает его только в соответствующем приложении вместо преобразования документов.   -  person flatline_    schedule 08.06.2013


Ответы (1)


rtf2htm — это не php-скрипт, это программа, установленная на сервере. exec() используется для вызова внешних приложений.

РЕДАКТИРОВАТЬ: после просмотра этого скрипта кажется, что это действительно php-скрипт. Но он был закодирован так, чтобы его можно было использовать только из командной строки.

Это должно работать:

<?php

exec('php /path/to/rtf2htm /path/to/source.rtf /path/to/output.html');

?>
person Alexandre Danault    schedule 07.06.2013
comment
php выдает ошибку not recognized as internal or external command. Спасибо за разъяснение кода, так как path/to/rtf2htm теперь открывает файл php, но он открывается только в соответствующем приложении (моя IDE) вместо преобразования документов. - person flatline_; 08.06.2013
comment
замените php полным путем к исполняемому файлу php, чтобы вы получили exec('/path/to/php /path/to/rtf2htm /path/to/source.rtf /path/to/output.html'); или exec('/path/to/php.exe /path/to/rtf2htm /path/to/source.rtf /path/to/output.html'); в окнах. - person Alexandre Danault; 08.06.2013
comment
exec('Drive:/path/to/php.exe') позволяет ему работать, но предполагаемый сценарий не работает. Что-то либо неправильно вводится, либо где-то внутри есть ошибка. Спасибо за помощь. Я опубликую решение, если я его найду. - person flatline_; 12.06.2013