amp в xml превращается в "&" - PullRequest
       2

amp в xml превращается в "&"

1 голос
/ 30 ноября 2010

Я создаю один URL и добавляю & к этому URL.

eg http://xyzc.com/abc.php?arg1=value1&arg2=value2

Теперь я добавляю этот URL в xml.

Я создаю XML с помощью tinyxml в c ++, а также пробовалсоздавая тот же xml в php.

После создания xml я обнаружил, что "&" преобразуется в "&"

Это нормально для "&", чтобы получитьпреобразован в "&"?Почему это происходит ?И что может быть возможным решением этой проблемы?

$strUrl ="http://xyzc.com/abc.php?";
$strUrl .="arg1=".$value1;
$strUrl .="&arg2=".$value2;

Вывод будет выглядеть как

http://xyzc.com/abc.php?arg1=10&arg2=100

1 Ответ

3 голосов
/ 30 ноября 2010

XML имеет функцию, называемую ссылкой на символ (&thingy;)

Поэтому все необработанные символы & должны быть экранированы как &
Это предопределенная ссылка на символ, эквивалентная& (amp обозначает амперсанд).

Если оставить неоткрытый &, будет создан недопустимый XML.

Обратите внимание, что необработанные символы < также должны быть экранированы как &lt;(lt означает меньше, чем).

...