Задать вопрос
@tajfun_rt

Как прочитать файл через РНР, чтобы обработать его яваскриптом?

Загружаю текстовый файл на сервер, открываю его с помощью fopen() и вывожу , а на экране маркеры взятые в скобки "<>" отсутствуют.
Если я делаю так :
$readfilename = $_SERVER['DOCUMENT_ROOT'].'/upload/'.$newFileName;
$file = fopen($readfilename, "rt") or die("Unable to open file!");
echo fread($file,filesize($readfilename));
fclose($file);

то выводит следующее:
67ced177d493f438877365.jpeg

Хотя в текстовом файле отображается так:
67ced194eb09f644097602.jpeg

Подскажите ,может я что-то неправильно сделал.
Вроде элементарный вопрос, а уже столько способов испробовал, я думаю наверняка есть простое решение.
  • Вопрос задан
  • 2002 просмотра
Подписаться 2 Простой 12 комментариев
Решения вопроса 1
@Gamelot
Программист php
Вы не видите тэги, потому что браузер их в режиме просмотра html-страницы не выводит. Если сделаете просмотр кода html в браузере, то увидите тэги. Чтобы по умолчанию видеть тэги, либо воспользуйтесь htmlspecialchars() функцией, либо выводите content-type заголовок в виде text/plain с помощью функции header()
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@Sicher
Смотри
file_get_contents()
Ответ написан
Driver86
@Driver86
Немодератор toster.ru
"Вам шашечки или ехать?" (c)
Что бы отобразить файл в браузере так, как он записан - это надо экранировать html-теги, например функцией htmlspecialchars.
Что бы обработать файл яваскриптом, его надо экранировать в виде валидного js-кода, например через json_encode, а точнее так примерно:
echo '<script> var myvar = ' . json_encode(fread(...)) . '; <script>';
Ответ написан
Комментировать
@dima_kos
Есть еще вариант отдавать содержимое файла как текстовый файл, тогда браузер его не отработает и будет php код восприниматься как обычный текст.
Тип отдаваемого файла указывается через header()
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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