Мой пользователь вводит сообщение со специальными символами следующим образом:
this is a test of &&, &&, % as well as '' "", " instead of this is a test of &, &&, % as well as '' "", "
Мне нужно построить XML следующим образом:
<?xml version='1.0' encoding='iso-8859-1'?> <success> <message> this is a test of &, &&, % as well as '' "", " instead of this is a test of &, &&, % as well as '' "", " </message> </success>
Кто-нибудь может мне помочь? заранее спасибо
Попробуйте htmlspecialchars()
входную строку, используя htmlspecialchars()
( спецификацию PHP ), прежде чем добавлять ее в документ XML, который должен предоставить вам htmlspecialchars()
кодировку.
Однако, если вы не ограничены тем, как вы создаете документ XML (т. Е. Вы можете сделать это иначе, чем чистые манипуляции с строками), я бы выполнил решение простинкина, поскольку оно намного более устойчиво в долгосрочной перспективе.
Вы можете использовать DOMDocument
для создания XML-документа и добавления необходимых элементов и текста. Все символы типа &
будут преобразованы в &
и т.п.