<?php
function Add($x, $y)
{
    return $x + $y;
}
class LocalSoapClient extends SoapClient
{
     private $server;
     public function __construct($wsdl, $options)
     {
         parent::__construct($wsdl, $options);
         $this->server = new SoapServer($wsdl, $options);
         $this->server->addFunction('Add');
     }
     public function __doRequest(
        $request,
        $location,
        $action,
        $version,
        $one_way = false,
     ): ?string {
     {
         ob_start();
         $this->server->handle($request);
         $response = ob_get_contents();
         ob_end_clean();
         return $response;
     }
}
$x = new LocalSoapClient(
    null,
    [
        'location' => 'test://',
        'uri' => 'http://testuri.org',
    ]
);
var_dump($x->Add(3, 4));
?>