вставить строку с двойными кавычками в тег HTML

0

как можно вставить двойные кавычки в тег html.

Пример: php-код:

$con = "the teacher said: \"hello\"";

return in php:

'<tagname name="'$con'">'

проблема в том, что он принимает текст только до тех пор, пока не найдет первую двойную кавычку

Благодарю.

Теги:

3 ответа

0
Лучший ответ
$con = "the teacher said: &quot;hello&quot;";
echo '<tagname con="'.$con.'">';

Используйте . для концентрации струн. Поскольку вы не можете включить двойную кавычку внутри атрибута HTML, даже если ее избежать в PHP, закодируйте двойную кавычку как &quot; , который будет отображаться как ". Если вы хотите сделать это автоматически, запустите

$con = htmlspecialchars($con);

для автоматической кодировки строки. Вы можете запустить этот встроенный

echo '<tagname con="'.htmlspecialchars($con).'">';

Руководство по PHP: htmlspecialchars

  • 1
    Это приводит к неверному HTML. Кавычки должны быть экранированы.
  • 1
    %22 - это кодировка URL, в HTML он будет отображаться как %22 , а не как " .
Показать ещё 1 комментарий
0

Используйте htmlspecialchars:

echo '<tagname name="' . htmlspecialchars($con) . '">'

HTML raw:

<tagname name="the teach said: &quot;hello&quot;">
0

У вас здесь две проблемы.

  1. Вы пытаетесь объединить строки без оператора конкатенации. Используйте .
  2. Вы столкнулись с проблемой двойных кавычек в строке PHP, которая ограничена двойными кавычками, но не с другой проблемой с двойными кавычками в значении атрибута HTML, которое ограничено двойными кавычками. Использовать htmlspecialchars

Такой:

'<tagname name="' . htmlspecialchars($con) . '">'

Ещё вопросы

Сообщество Overcoder
Наверх
Меню