PHP переменная с кавычками внутри двойных кавычек
Вот так должно быть <offer id="935" available="true">
вот кусок кода
$yml = "<offer id='" . $py['product_id'] . "' available=\"true\">" . $this->eol;
результат <offer id='935' available="true">
id в одинарных кавычках, а должно быть в двойных (
Ответы (2 шт):
Вам нужно проэкранировать двойные кавычки, как вы сделали с available=\"true\":
$yml = "<offer id=\"" . $py['product_id'] . "\" available=\"true\">" . $this->eol;
На самом деле есть много вариантов для строки. Они все описаны в документации в разделе строки. Там описаны и варианты с HEREDOC/NOWDOC и с подстановкой переменных и с экранированием и различия одинарных кавычек от двойных и подстановка управляющих последовательностей в виде \n \t и т.д.
Я хотел было написать тут варианты решения, но подумал, что их будет очень много и проще будет прочитать именно раздел работы со строками, чем копировать 25 скроллов документации. Это намного полезнее