Я пытаюсь отобразить содержимое файла php в текстовой области с
<textarea ...>
<?php echo file_get_contents("file.php"); ?>
</textarea>
но он преобразует HTML-сущности, такие как ö
тоже. Поскольку это php-код, я не могу использовать преобразование, например htmlspecialchars, потому что это <> и цитаты и т.д.
РЕДАКТИРОВАТЬ:
Я проверил исходный код в браузере и там действительно есть ö.
Пожалуйста, помогите, спасибо!
htmlspecialchars изменится:
< ö
чтобы:
< &ouml;
Он будет отображаться в текстовой области:
< ö
После отправки формы она отправит на сервер текст
< ö
не:
< &ouml;
Протестировано в Chrome с jQuery:
$('#layout').html('<form method="POST"><textarea name="x"><&ouml;</textarea><input type="submit" /></form>')
Я думаю, что есть некоторые 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.
<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-код приведенного выше кода будет (Просмотреть исходный код):
<a href="https://www.w3schools.com">Go to w3schools.com</a>
Браузер выводит код выше:
<a href="https://www.w3schools.com">Go to w3schools.com</a>