1
tem:sessionId
과 같은 매개 변수가있는 xml wsdl 요청을 생성하고 싶습니다. 그러나 PHP 코드는 x:sessionId
입니다. 내가 필요 x:
결과SimpleXML Document PHP를 사용하여 tem : tagName을 가진 자식 추가
tem:
로 변환하는 방법을 알고하지 않습니다
<?xml version="1.0"?>
<x:Envelope xmlns:x="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<x:Header/>
<x:Body>
<tem:GetServicesByProvider>
<tem:sessionId>890925</tem:sessionId>
<tem:ProviderId>29</tem:ProviderId>
<tem:mac/>
</tem:GetServicesByProvider>
</x:Body>
</x:Envelope>
이 내 PHP 코드
private function createXMLRequest($function, $params)
{
$xml = new \SimpleXMLElement('<x:Envelope xmlns:x="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/"><x:Header/></x:Envelope>');
$body = $xml->addChild('Body');
$f = $body->addChild($function, '');
foreach ($params as $param) {
$f->addChild($param['tag'], $param['text']);
}
return $xml;
}
이지만이 생성
<?xml version="1.0"?>
<x:Envelope xmlns:x="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<x:Header/>
<x:Body>
<x:GetServicesByProvider>
<x:sessionId>890925</x:sessionId>
<x:ProviderId>29</x:ProviderId>
<x:mac/>
</x:GetServicesByProvider>
</x:Body>
</x:Envelope>
'tem :'을'addChild' 메소드에 추가하면'tem :'이 자동으로 제거됩니다. –
@ 543310 올바른 네임 스페이스 URL을 세 번째 매개 변수로 포함 하시겠습니까? 나는이 코드를 게시하기 전에이 코드를 테스트했고, 원하는 결과물을 정확히 만들어 냈다. 직접 체험 해보십시오 : https://3v4l.org/majj9 – IMSoP