Как создать xml в php со специальными символами?

Мой пользователь вводит сообщение со специальными символами следующим образом:

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 &amp;, &amp;&amp;, % as well as '' &quot;&quot;, &quot; instead of this is a test of &, &&, % as well as '' "", " </message> </success> 

Кто-нибудь может мне помочь? заранее спасибо

Попробуйте htmlspecialchars() входную строку, используя htmlspecialchars() ( спецификацию PHP ), прежде чем добавлять ее в документ XML, который должен предоставить вам htmlspecialchars() кодировку.

Однако, если вы не ограничены тем, как вы создаете документ XML (т. Е. Вы можете сделать это иначе, чем чистые манипуляции с строками), я бы выполнил решение простинкина, поскольку оно намного более устойчиво в долгосрочной перспективе.

Вы можете использовать DOMDocument для создания XML-документа и добавления необходимых элементов и текста. Все символы типа & будут преобразованы в &amp; и т.п.