Package Generator は、任意の WSDL から PHP SDK を生成します。
Package Generator は任意の WSDL から PHP SDK を生成するため、SOAP が内部でどのように使用されているかを気にすることなく、任意の SOAP Web サービスを簡単に利用できます。
Package Generator には、必要なオプションがいくつかある場合でも、パッケージを生成するための多くのオプションが用意されています。このプロジェクトは多くの WSDL でテストされており、現在はプラットフォーム Providr.IO で使用されています。
Package Generator は、MANIFEST に詳細が記載されているファイルを生成します。生成されたクラスの使用方法に加えて、ファイルが生成される方法と理由を理解するために、この文書を読むことをお勧めします。
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
パッケージを生成するには 2 つの方法があります (プロジェクト内で生成する方法とコマンド ラインを使用して生成する方法とは別に)。
composer.json
ファイルを持つ独立したプロジェクトとして生成されることを意味します。生成の最後に、パッケージが生成されたルート ディレクトリにはcomposer.json
、 composer.lock
ファイル、およびvendor
ディレクトリが含まれます。composer.json
ファイルを使用して既存のプロジェクトの一部として生成されることを意味します。 standalone
オプションについては、「スタンドアロン」セクションで詳しく説明します。
すべてのオプションについては、「オプション」ページで詳しく説明されています。
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 ();
コマンドラインは次のとおりです。
$ wsdltophp generate:package
--urlorpath= " http://developer.ebay.com/webservices/latest/ebaySvc.wsdl "
--destination= " ./MySdk "
--composer-name= " myproject/mysdk "
--force
使用されているすべてのオプションを表示するには、 --force
引数を削除するだけです。
上記のコマンド ラインのように、前にdocker run
コマンド ラインを使用するだけです。
$ 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
使用されているすべてのオプションを表示するには、 --force
引数を削除するだけです。
2021 年 4 月 3 日に初めてリリースされ、バージョン 6.0 がリリースされるまで維持されます。主な変更点を確認するには、UPGRADE-4.0 の注意事項をお読みください。
2018 年 5 月 4 日に初めてリリースされ、バージョン 5.0 がリリースされるまで維持されます。主な変更点を確認するには、UPGRADE-3.0 の注意事項をお読みください。
NOT MAINTAINED ANYMORE : たとえバージョン 5 が公開されていなくても、すぐにリリースされる予定がなくても、特に古い PHP バージョンの場合、2 つのバージョンを維持するのは時間がかかります。最新バージョンで修正される問題が発生する可能性があるまだ使用しているユーザーには申し訳ありません。 。
2021 年 4 月 3 日以降メンテナンスされていません。
2016 年 4 月 29 日に最初にリリースされ、バージョン 4.0 がリリースされるまで維持されます。
もうメンテナンスされていない
# launch all tests
$ phpunit
# launch a testsuite: command, configuration, utils, model, container, parser, file, PackageGenerator
$ phpunit --testsuite=model
phpfarm の Docker イメージのおかげで、cli を使用して任意のPHP バージョンでテストをローカルで実行できます。
まず、コンテナを作成する必要があります。これは、プロジェクトのルート ディレクトリから以下のコマンド ラインを実行することで docker-compose を使用して実行できます。
$ docker-compose up -d --build
これで、 package_generator
という名前のコンテナーが作成され、このコンテナーで次のようなcomposer
コマンドとphp cli
コマンドを実行できます。
# 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
詳細については、「貢献」を参照してください。さらに、コードのドキュメントは doc.wsdltophp.com にあります。
このプロジェクトに協力した開発者は、composer.json ファイルにContributor
としてリストされており、次のとおりです。
ご質問がある場合は、パッケージを生成するために利用可能なオプションについての「オプション」ページをお読みください。
パッケージの生成とその使用法に関するさまざまな質問を含む FAQ もあります。
それでも質問がある場合は、お気軽に問題を作成してください。
MIT ライセンス (MIT)。詳細については、ライセンス ファイルを参照してください。