WSDL zu PHP mit Basic Auth

Es gibt einige Möglichkeiten, eine WSDL-Datei in PHP-Code mit Basic Auth zu konvertieren, aber eine häufig verwendete Methode ist die Verwendung eines Tools namens "wsdl2phpgenerator". Dieses Tool generiert PHP-Klassen aus einer WSDL-Datei und kann auch Basic Authentication verarbeiten, indem es die Optionen "--username" und "--password" verwendet.

Zunächst müssen Sie das wsdl2phpgenerator-Paket von der Website herunterladen. Danach können Sie die Befehlszeile verwenden, um das Paket auszuführen und die PHP-Klassen zu generieren.

php wsdl2php.phar generate -i http://example.com/service.wsdl -o generated/ -n MyService --username user --password pass

Der obige Befehl generiert PHP-Klassen im Verzeichnis "generated" und verwendet "MyService" als Namensraum. Die Optionen "--username" und "--password" werden verwendet, um die Basic Auth-Anmeldeinformationen anzugeben.

Danach können Sie die generierten Klassen in Ihrem PHP-Code verwenden, um SOAP-Anfragen an den Service zu senden.

Sie können auch andere Tools wie "wsdl2php" verwenden, das ein Befehlszeilentool ist, "EasyWsdl", das eine Bibliothek ist, die Sie in Ihrem Code verwenden können.

Es ist auch möglich, die SoapClient-Klasse zu verwenden, die eine eingebaute PHP-Klasse ist, um einen Client für einen Webdienst zu erstellen, indem die WSDL-URL und die Authentifizierungsinformationen als Argumente übergeben werden.

$options = [
    'login' => 'user',
    'password' => 'pass',
    'trace' => 1,
    'exceptions' => 0
];
$client = new SoapClient('http://example.com/service.wsdl', $options);

Bitte beachten Sie, dass die obigen Beispiele davon ausgehen, dass die WSDL und der Server Basic Auth unterstützen und Ihre PHP-Version SOAP unterstützt.