2010-06-12 2 views
0

Некоторые сведения об изображении: Мое веб-приложение хранит некоторые XML в столбце «Текст» базы данных MySQL. Этот XML представляет собой транзакцию для приложения.PHP автоматически анализирует мою строку?


Проблема возникает, когда я тестирую свою библиотеку. В PHP, у меня есть строка:

$s="<flist><transaction amount=\"10\" type=\"income\">Initial Amount</transaction></flist>"; 

Однако всякий раз, когда я эхо или освятить эту строку, она превращается в «Начальную сумму». У меня отсутствует функция PHP? Как я могу это исправить? Вау! Когда я создаю этот пост, StackOverflow преобразует этот XML в $ s = Начальную сумму ... Пожалуйста, помогите ... Спасибо за ваше время, поскольку это меня полностью озадачивает.

+0

В вашем браузере настроили ли вы нажатие на "View Source"? – Artelius

+0

это HTML-чувак. HTML анализирует ваши теги. Go figure –

+0

Я предполагал, что окружающие его с помощью pre-меток помешали бы этому, но да, это была проблема. – PlagueEditor

ответ

3

PHP не выполняет автоматический синтаксический анализ строки.

Вы эхом и просматриваете его в браузере? Очень вероятно, что браузер перескакивает по неизвестным тегам и показывает, что он может. Вы можете добавлять в рассмотрении htmlspecialchars() на свой вывод следующим образом:

echo htmlspecialchars($s); 

Вы также должны видеть его правильно при просмотре веб-источника. Это функция HTML для поддержки будущих версий без нарушения текущих.

+0

Wow; вот и все. Я чувствую себя глупым ... Я думал, что окружающие его с pre-тегами остановят это. Это была проблема. Спасибо! – PlagueEditor

Смежные вопросы