php file_get_contents () конвертирует html-сущности, такие как & amp; ouml; тоже

Я пытаюсь отобразить содержимое файла php в текстовой области с

<textarea ...>
<?php echo file_get_contents("file.php"); ?>
</textarea>

но он преобразует HTML-сущности, такие как &ouml; тоже. Поскольку это php-код, я не могу использовать преобразование, например htmlspecialchars, потому что это <> и цитаты и т.д.

РЕДАКТИРОВАТЬ:

Я проверил исходный код в браузере и там действительно есть ö.

Пожалуйста, помогите, спасибо!

0

Решение

htmlspecialchars изменится:

< &ouml;

чтобы:

&lt; &amp;ouml;

и это нормально.

Он будет отображаться в текстовой области:

< &ouml;

После отправки формы она отправит на сервер текст

< &ouml;

не:

&lt; &amp;ouml;

Протестировано в Chrome с jQuery:

$('#layout').html('<form method="POST"><textarea name="x">&lt;&amp;ouml;</textarea><input type="submit" /></form>')
1

Другие решения

Я думаю, что есть некоторые non-UTF-8 персонаж в вашем file.php, Попробуй это:

     $content = file_get_contents('/tmp/file.php');
$content = mb_convert_encoding($content, 'UTF-8',mb_detect_encoding($content, 'UTF-8, ISO-8859-1', true));
print_r($content);

Вы можете отослать этот комментарий http://php.net/manual/en/function.file-get-contents.php#85008.

0

<textarea ...>
<?php echo htmlentities(file_get_contents("file.php")); ?>
</textarea>

пример

Преобразуйте некоторые символы в объекты HTML:

<?php
$str = '<a href="https://www.w3schools.com">Go to w3schools.com</a>';
echo htmlentities($str);
?>

HTML-код приведенного выше кода будет (Просмотреть исходный код):

&lt;a href=&quot;https://www.w3schools.com&quot;&gt;Go to w3schools.com&lt;/a&gt;

Браузер выводит код выше:

<a href="https://www.w3schools.com">Go to w3schools.com</a>
0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector