PHP code example of ndexondeck / soapbuilder

1. Go to this page and download the library: Download ndexondeck/soapbuilder library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

ndexondeck / soapbuilder example snippets


$soapBuilder = new Builder();

$soapBuilder->soap__Header = new Payload();

$soapBuilder->Body = new Payload();
$soapBuilder->Body->Username = new Payload('[email protected]');
$soapBuilder->Body->Password = new Payload('ndex4Jesus');

echo $soapBuilder->getXml();

 $soapBuilder = new Builder('soap',[
        "tem"=>"http://tempuri.org/",
        "sms"=>"http://schemas.datacontract.org/2004/07/SMSAppws",
        "wsa"=>"http://schemas.xmlsoap.org/ws/2004/08/addressing",
    ],'1.2');

$soapBuilder->soap__Header = new Payload();
$soapBuilder->soap__Header->wsa__Action = new Payload('http://tempuri.org/IService/SendMessage',[
    "xmlns:wsa"=>"http://www.w3.org/2005/08/addressing"
]);
$soapBuilder->soap__Header->wsa__To = new Payload('https://sms.sender.example/Service.svc',[
    "xmlns:wsa"=>"http://www.w3.org/2005/08/addressing"
]);

$soapBuilder->soap__Body = new Payload();
$soapBuilder->soap__Body->tem__SendMessage = new Payload();
$soapBuilder->soap__Body->tem__SendMessage->tem__message = new Payload();
$soapBuilder->soap__Body->tem__SendMessage->tem__message->sms__Message = new Payload($msg);
$soapBuilder->soap__Body->tem__SendMessage->tem__message->sms__MobileNo = new Payload($phone);

echo $soapBuilder->getXml();

$xmlBuilder = (new SoapBuilder())->setAsXml()->setVersion('1.0');
$xmlBuilder->SearchCriteria = new Payload();
$xmlBuilder->SearchCriteria->UserName = new Payload('John');

echo $xmlBuilder->getXml();

$xmlBuilder = new SoapBuilder();
$xmlBuilder->setVersion('1.0')->setAsResponse()->setAsXml();
$xmlBuilder->Response = new Payload();
$xmlBuilder->Response->ResponseCode = new Payload('00');
$xmlBuilder->Response->UserList = new PayloadCollection('Department');

$user_count = 0;
if(!empty($results)){
    foreach ($results as $department){

        $collection = new PayloadCollection('User',['Id'=>$department['id'], 'Name'=>$department['name']]);

        $this_count = 0;
        foreach ($department['users'] as $user){
            $collection->append($user,[],true);
            $user_count++;
            $this_count++;
        }

        if($this_count > 0){
            $xmlBuilder->Response->UserList->Department = $collection;
        }
    }
}

$xmlBuilder->Response->UserList->setElementAttributes(['TotalAvailable'=>$user_count]);

echo $xmlBuilder->getXml();