Package Generator genera un SDK de PHP desde cualquier WSDL.
Package Generator genera un SDK de PHP desde cualquier WSDL para que pueda consumir fácilmente cualquier servicio web SOAP sin preguntarse cómo se usa SOAP internamente.
Package Generator proporciona muchas opciones para generar su paquete, incluso si se requieren algunas. Este proyecto ha sido probado con muchos WSDL y actualmente se utiliza en la plataforma Providr.IO.
Package Generator genera archivos que se detallan en el MANIFEST. Le recomendamos que lo lea para comprender cómo y por qué se generan los archivos, además de la forma en que se supone que deben usarse las clases generadas.
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
Hay dos formas de generar tu paquete (aparte de estar en un proyecto y generarlo a través de la línea de comando):
composer.json
. Al final de la generación, el directorio raíz donde se generó el paquete contendrá el composer.json
, el archivo composer.lock
y el directorio vendor
.composer.json
. La opción standalone
se detalla completamente en la sección Independiente.
Todas las opciones están completamente detalladas en la página Opciones.
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 ();
La línea de comando es:
$ wsdltophp generate:package
--urlorpath= " http://developer.ebay.com/webservices/latest/ebaySvc.wsdl "
--destination= " ./MySdk "
--composer-name= " myproject/mysdk "
--force
Para ver todas las opciones utilizadas, simplemente elimine el argumento --force
.
Al igual que con la línea de comando anterior, simplemente use la línea de comando docker run
antes:
$ 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
Para ver todas las opciones utilizadas, simplemente elimine el argumento --force
.
Lanzado por primera vez el 3 de abril de 2021, mantenido hasta el lanzamiento de la versión 6.0. Lea la nota de ACTUALIZACIÓN-4.0 para conocer los principales cambios.
Lanzado por primera vez el 4 de mayo de 2018, mantenido hasta el lanzamiento de la versión 5.0. Lea la nota de ACTUALIZACIÓN-3.0 para conocer los cambios principales.
YA NO SE MANTIENE : incluso si la versión 5 no se publica ni se espera pronto, mantener 2 versiones, especialmente para una versión antigua de PHP, lleva mucho tiempo, lo siento por las personas que todavía la usarían y que encontrarían problemas solucionados en la última versión. .
No mantenido desde el 3 de abril de 2021.
Lanzado por primera vez el 29 de abril de 2016, se mantiene hasta que se lanza la versión 4.0.
Ya no se mantiene
# launch all tests
$ phpunit
# launch a testsuite: command, configuration, utils, model, container, parser, file, PackageGenerator
$ phpunit --testsuite=model
Gracias a la imagen Docker de phpfarm, las pruebas se pueden ejecutar localmente bajo cualquier versión de PHP usando el cli:
En primer lugar, necesita crear su contenedor, lo cual puede hacer usando docker-compose ejecutando la siguiente línea de comando desde el directorio raíz del proyecto:
$ docker-compose up -d --build
Luego tiene un contenedor llamado package_generator
en el que puede ejecutar comandos composer
y comandos php cli
como:
# 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
Consulte CONTRIBUCIÓN para obtener más detalles. Además, la documentación del código se encuentra en doc.wsdltophp.com.
Los desarrolladores que ayudaron en este proyecto figuran en el archivo compositor.json como Contributor
y son:
Si tiene alguna pregunta, lea la página Opciones sobre las opciones disponibles para generar el paquete.
También hay preguntas frecuentes que contienen preguntas diversas sobre la generación de paquetes y su uso.
Luego, si todavía tienes alguna pregunta, no dudes en crear un problema.
La Licencia MIT (MIT). Consulte el archivo de licencia para obtener más información.