Действительно ли возможно отобразить файл RTF в веб-странице с помощью PHP?

Как вы можете показать их все, когда вы только возвращаете индекс одного из них (и даже не первого)?

Попробуйте вернуть список результатов. или Pair<int, int> индексов начинаются и заканчиваются

13
задан Ólafur Waage 24 March 2009 в 16:36
поделиться

4 ответа

Большинство браузеров надежно не отобразит содержание RTF. ВОЗМОЖНО проанализировать RTF в HTML и отобразить содержимое HTML на Вашей веб-странице как бы то ни было.

Вам нужна некоторая программа, чтобы проанализировать RTF и преобразовать его в HTML. Я предполагаю, что это должно быть свободно. Я не знаю ни о каком надежном бесплатном парсинге RTF или RTF к библиотекам HTML в PHP.

Я рекомендую использовать программу преобразования командной строки как RTF2HTML: http://sageshome.net/?w=downloads/soft/RTF2HTML.html

Необходимо было бы загрузить и установить эту программу на веб-сервере, позволить пользователю загружать файл на временный каталог и затем называть приложение командной строки от PHP с shell_exec ():

$html_output_path = '/path/for/processing/files/'
$html_output_filename = $username . $timestamp;
if (is_uploaded_file($_FILES['userfile']['tmp_name'])
{
  shell_exec('rtf2html ' . 
    escapeshellarg($_FILES['userfile']['tmp_name']) . " " .
    $html_output_path . $html_output_filename);
}
$html_to_display = file_get_contents($html_output_path . 
  $html_output_filename);

Затем проанализируйте результаты как HTML и отобразите их. Не плохая стратегия. Обратите внимание, что необходимо будет, вероятно, удалить голову, тело и возможно другие теги, если Вы соберетесь отобразить содержание в другой веб-странице.

8
ответ дан 2 December 2019 в 00:03
поделиться

Во-первых: у Вас есть свой тип контента неправильно. для RTF это text/rtf

Во-вторых: Вы только сможете отобразиться встроенный этот тип содержания, которое может быть представлено веб-браузером. RTF не является одним из них. Таким образом, Вы не сможете отобразить его встроенный, не преобразовывая его, или без некоторого плагина для браузера. Конечно, преобразование могло бы быть непрерывным.

2
ответ дан 2 December 2019 в 00:03
поделиться

Веб-страницы могут только содержать HTML. Вам был бы нужен плагин браузера как флэш-память для отображения других типов файлов. См. Scribd, например.

1
ответ дан 2 December 2019 в 00:03
поделиться

Вы не можете только произвести файл из кода PHP. Необходимо извлечь данные из него, затем распечатать встроенное содержание.

Функция php 'file_get_contents' может сделать то, в чем Вы нуждаетесь. Руководство функций здесь: http://us2.php.net/filegetcontents

Демонстрационное использование здесь:

$contents = file_get_contents('yourfile.rtf');
-2
ответ дан 2 December 2019 в 00:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: