html_entity_decode и тег HTML <textarea>

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

$data = '<b> Hello </b>'
$data = html_entity_decode($data); 

// выводит Привет, но когда я делаю

<textarea><?=$data?></textarea>

Значение в textarea отображается как есть, то есть:

<b> Hello </b>

Почему так?

1 ответ

Видимо, когда вы вставили данные в базу данных, они не были закодированы. Если он не закодирован, декодирование не работает.

Кроме того, основной сценарий заключается в том, что текстовая область может содержать только текстовые элементы. Когда вы кладете эти данные внутри <textarea><?=$data?></textarea>вы на самом деле кладете <b> Hello </b>, Таким образом, область текста превращается в простой текст. Вы можете узнать больше об этом через стандарт текстовой области W3C.

Другие вопросы по тегам