Package Generator generiert ein PHP SDK aus jeder WSDL.
Package Generator generiert ein PHP SDK aus jeder WSDL, sodass Sie problemlos jeden SOAP-Webdienst nutzen können, ohne sich fragen zu müssen, wie SOAP unter der Haube verwendet wird.
Der Paketgenerator bietet viele Optionen zum Generieren Ihres Pakets, auch wenn einige davon erforderlich sind. Dieses Projekt wurde mit vielen WSDLs getestet und wird derzeit auf der Plattform Providr.IO verwendet.
Der Paketgenerator generiert Dateien, die im MANIFEST detailliert aufgeführt sind. Wir empfehlen Ihnen, es zu lesen, um zu verstehen, wie und warum die Dateien generiert werden und um zu verstehen, wie die generierten Klassen verwendet werden sollen.
composer require wsdltophp/ PackageGenerator --dev
$ wget https://phar.wsdltophp.com/wsdltophp-php7.phar
$ chmod +x wsdltophp-php7.phar
$ mv wsdltophp-php7.phar /usr/local/bin/wsdltophp
$ docker run --rm -it mikaelcom/wsdltophp:tagname
Es gibt zwei Möglichkeiten, Ihr Paket zu generieren (abgesehen davon, dass Sie sich in einem Projekt befinden und es über die Befehlszeile generieren):
composer.json
Datei generiert wird. Am Ende der Generierung enthält das Stammverzeichnis, in dem das Paket generiert wurde, die composer.json
, die Datei composer.lock
und das vendor
-Verzeichnis.composer.json
Datei generiert wird. Die standalone
-Option wird im Abschnitt „Standalone“ ausführlich beschrieben.
Alle Optionen werden auf der Seite „Optionen“ ausführlich beschrieben.
use WsdlToPhp PackageGenerator ConfigurationReader GeneratorOptions ;
use WsdlToPhp PackageGenerator Generator Generator ;
// Options definition: the configuration file parameter is optional
$ options = GeneratorOptions:: instance ( /* '/path/file.yml' */ );
$ options
-> setOrigin ( ' http://developer.ebay.com/webservices/latest/ebaySvc.wsdl ' )
-> setDestination ( ' ./MySdk ' )
-> setComposerName ( ' myproject/mysdk ' );
// Generator instantiation
$ generator = new Generator ( $ options );
// Package generation
$ generator -> generatePackage ();
Die Befehlszeile lautet:
$ wsdltophp generate:package
--urlorpath= " http://developer.ebay.com/webservices/latest/ebaySvc.wsdl "
--destination= " ./MySdk "
--composer-name= " myproject/mysdk "
--force
Um alle verwendeten Optionen anzuzeigen, entfernen Sie einfach das Argument --force
.
Verwenden Sie wie bei der Befehlszeile oben einfach die docker run
Befehlszeile, bevor Sie Folgendes tun:
$ docker run --rm -it --volume $PWD :/var/www mikaelcom/wsdltophp:tagname generate:package
--urlorpath= " http://developer.ebay.com/webservices/latest/ebaySvc.wsdl "
--destination= " /var/www/MySdk "
--composer-name= " myproject/mysdk "
--force
Um alle verwendeten Optionen anzuzeigen, entfernen Sie einfach das Argument --force
.
Erstmals veröffentlicht am 3. April 2021, gepflegt bis zur Veröffentlichung der Version 6.0. Bitte lesen Sie den UPGRADE-4.0-Hinweis, um die wichtigsten Änderungen zur Kenntnis zu nehmen.
Erstveröffentlichung am 4. Mai 2018, gepflegt bis zur Veröffentlichung der Version 5.0. Bitte lesen Sie den UPGRADE-3.0-Hinweis, um die wichtigsten Änderungen zur Kenntnis zu nehmen.
NICHT MEHR GEWARTET : Auch wenn Version 5 nicht veröffentlicht wird oder bald erwartet wird, ist die Wartung von zwei Versionen, insbesondere für eine alte PHP-Version, zeitaufwändig. Entschuldigung für die Leute, die sie immer noch verwenden würden und bei denen Probleme auftreten würden, die in der neuesten Version behoben wurden .
Seit 03. April 2021 nicht mehr gepflegt.
Erstmals veröffentlicht am 29. April 2016, wird bis zur Veröffentlichung von Version 4.0 beibehalten.
Wird nicht mehr gepflegt
# launch all tests
$ phpunit
# launch a testsuite: command, configuration, utils, model, container, parser, file, PackageGenerator
$ phpunit --testsuite=model
Dank des Docker-Images von phpfarm können Tests lokal unter jeder PHP-Version über die CLI ausgeführt werden:
Zunächst müssen Sie Ihren Container erstellen, was Sie mit Docker-Compose tun können, indem Sie die folgende Befehlszeile im Stammverzeichnis des Projekts ausführen:
$ docker-compose up -d --build
Sie haben dann einen Container namens package_generator
, in dem Sie composer
-Befehle und php cli
-Befehle ausführen können, wie zum Beispiel:
# install deps in container (using update ensure it does use the composer.lock file if there is any)
$ docker exec -it package_generator php-7.4 /usr/bin/composer update
# run tests in container
$ docker exec -it package_generator php-7.4 -dmemory_limit=-1 vendor/bin/phpunit
Weitere Informationen finden Sie unter BEITRAGEN. Darüber hinaus finden Sie die Codedokumentation unter doc.wsdltophp.com.
Entwickler, die bei diesem Projekt mitgeholfen haben, werden in der Datei „composer.json“ als Contributor
aufgeführt und sind:
Wenn Sie Fragen haben, lesen Sie bitte die Seite „Optionen“ über die verfügbaren Optionen zum Generieren des Pakets.
Es gibt auch eine FAQ, die verschiedene Fragen zur Paketgenerierung und ihrer Verwendung enthält.
Wenn Sie dann noch eine Frage haben, können Sie gerne ein Problem erstellen.
Die MIT-Lizenz (MIT). Weitere Informationen finden Sie in der Lizenzdatei.