PHP 肥皂修剪必要的空格


PHP soap trimming necessary whitespace

所以我正在构建一个肥皂通信器来将数据传输到客户端。

其中有一个字段是空白的,但不能作为空标签传达,他们要求它只是一个空格。

所以数据是沿着

$address = array("address1" => " ", "address2" => "123 Fake Street",...);

当我为此生成 xml 时,我得到

<ns1:Address1/>而不是<ns1:Address1> </ns1:Address1>

WSDL 采用 Soap 1.2 和 utf8 编码。

我尝试过urlencode(),rawurlencode(),utf8_encode()以及html &nbsp字符。

尝试

$string = '<![CDATA [ ]]>';

或者在阵列的情况下

$address = array("address1" => "<![CDATA [ ]]>", "address2" => "<![CDATA [123 Fake Street]]>",...);

接受的答案并不完全正确。

CDATA和括号之间的空格导致无效的XML,PHP Soapserver导致"错误请求"

它应该是:

$string = '<![CDATA[ ]]>';