开发者

Using SOAP to generate XML attributes in PHP

开发者 https://www.devze.com 2022-12-16 15:36 出处:网络
I found you can generate this in SOAP in php: <foo bar=\"blah\">12345</foo> With this: array(\"foo\" => array(\"_\" => 12345, \"bar\" => \"blah\"));

I found you can generate this in SOAP in php:

<foo bar="blah">12345</foo>

With this:

array("foo" => array("_" => 12345, "bar" => "blah"));

However, the underscore method does not seem to work when the value is not a number and string, but开发者_StackOverflow instead embedded xml code. How would you do this for instance?

<foo bar="blah">
    <aaa a="b">blah</aaa>
</foo>

This is an extension of this person's question: http://www.bigresource.com/Tracker/Track-php-uQwDoUib/


I don't have a quick way of testing, but maybe this would work:

$a = array(
    'foo' => array(
        'bar' => 'blah',
        'aaa' => array(
            '_' => 'blah',
            'a' => "b",
        ),
    ),  
);


How can you add an attribute to a node that is the function;

$update = $soap->UpdateMember($pRecord);

or

$update = $soap->__soapCall('UpdateMember', array($Updates));

I need to add namescape or xmlns attribute to the actual function name here. I'm getting the following;

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.sample.net/">
<SOAP-ENV:Body>
<ns1:UpdateMember>
MORE XML HERE
</ns1:UpdateMember>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

but I need

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.sample.net/">
<SOAP-ENV:Body>
<ns1:UpdateMember xmlns="http://www.sample.net/">
MORE XML HERE
</ns1:UpdateMember>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Need to have ns1:UpdateMember xmlns:ns1="http://www.sample.net/" or something like that.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号