PHP Classes

PHP SOAP Package Generator: Generate package to call SOAP services using WSDL

Recommend this page to a friend!
  Info   Documentation   View files Files   Install with Composer Install with Composer   Download Download   Reputation   Support forum   Blog    
Ratings Unique User Downloads Download Rankings
StarStarStarStar 69%Total: 407 All time: 6,511 This week: 524Up
Version License PHP version Categories
packagegenerator 1.3.1MIT/X Consortium ...5.3.3PHP 5, Libraries, Web services
Description 

Authors

Mikaël DELSOL
Gemorroj
ceeram


Contributor

This package can generate package to call SOAP services using WSDL.

The package can take a given WSDL file URL and generates a PHP package to perform calls to the respective Web service based on SOAP.

The generated code uses the SoapClient extension that comes with PHP since version 5.

Innovation Award
PHP Programming Innovation award winner
October 2015
Winner


Prize: PhpStorm IDE personal permanent license
The interfaces provided by SOAP protocol Web services are usually described in a XML file in the WSDL format.

This class can take a WSDL file and generates the code for a PHP package to call a given SOAP Web service.

Manuel Lemos
Picture of WsdlToPhp
  Performance   Level  
Name: WsdlToPhp <contact>
Classes: 9 packages by
Country: France France
Age: 41
All time rank: 73731 in France France
Week rank: 48 Up3 in France France Up
Innovation award
Innovation award
Nominee: 5x

Winner: 1x

Recommendations

SOAP login and SOAP requests
Need to access a SOAP server and return data

Call SOAP Web service
Problem to call Web service with authentication

Identity validation
Validate social security number

Documentation

WsdlToPhp Package Generator

License Latest Stable Version Build Status PHP 7 ready Scrutinizer Code Quality Code Coverage Total Downloads Dependency Status StyleCI

Package Generator eases the creation of a PHP package in order to call any SOAP oriented Web Service.

Its purpose is to provide a full OOP approach to send SOAP requests using: - PHP classes for parameters that match the Web Service parameter names - PHP Service classes that match the operation names provided by the Web Service

The generated package does not need PEAR nor NuSOAP, at least : - PHP 5.3.3, - SoapClient : natively installed with PHP, - DOM : natively installed with PHP, - PackageBase: automatically installed on standalone mode (default mode), it contains utility classes used by the generated classes. Full documentation about the classes is available at the project homepage. If you're not using the standalone mode, you must add `wsdltophp/packagebase: dev-master` in your main composer.json file.

Summary

Generated package hierarchy

/Api
	/src
	    /ArrayType/: classes that contain one property which is an array of items
	    /EnumType/: classes that only contain constants, enumerations defined by the WSDL
	    /ServiceType/: classes that give access to the operations
	    /StructType/: any type that represents a request/response and their sub elements
	    /ClassMap.php: the class that defines the mapping between generated classes and declared structs
    /vendor/: automatically created by composer on standalone mode (default: true)
    /composer.json: automatically created by composer on standalone mode (default: true)
    /composer.lock: automatically created by composer on standalone mode (default: true)
    /tutorial.php: generated if ```--gentutorial``` option is enabled (default: true)

Options

The generator comes with several options: - Required package configuration:

- \-\-urlorpath: path or url to get the WSDL
- \-\-destination: absolute path where the classes must be generated
- \-\-composer-name: must be present to define the composer name in the generated package's composer.json file (only on standalone mode, see standalone option)
- \-\-force: must be present to generate the package, otherwise you'll get the debug informations
  • _Optional_ generated class naming: - \-\-prefix: the classes name prefix, used as the main namespace - \-\-suffix: the classes name suffix, used as the main namespace if no prefix is defined
  • _Optional_ basic Authentication credentials, if the WSDL is protected by a Basic Authentication, then specify: - \-\-login: the basic authentication login - \-\-password: the basic authentication login
  • _Optional_ proxy configuration, if you're behind a proxy: - \-\-proxy-host: the proxy host - \-\-proxy-port: the proxy port - \-\-proxy-login: your proxy login - \-\-proxy-password: your proxy password
  • _Optional_ directories structure: - \-\-category: - cat _(default)_, each class is put in a directory that matches its type such as: - ArrayType: any array type class - EnumType: any class that only contains constants _(enumerations)_ - ServiceType: classes that contains the methods matching the _operations_ - StructType: any class that is a _simpleType_ or _complexType_ or an _abstract_ element - none: all the classes are generated directly in the root directory defined by the destination - \-\-structs-folder: each struct is created in a sub directory of the root src folder. By default, the directory is named _StructType_ - \-\-arrays-folder: each array is created in a sub directory of the root src folder. By default, the directory is named _ArrayType_ - \-\-enums-folder: each enumeration is created in a sub directory of the root src folder. By default, the directory is named _EnumType_ - \-\-services-folder: each service class is created in a sub directory of the root src folder. By default, the directory is named _ServiceType_
  • _Optional_ operation gathering method, if you have getList, getUsers, getData and setUser as operations: - \-\-gathermethods: - start _(default)_: you'll have one Get class that contains the getList, getUsers and getData methods and another class Set that contains only the setUser method - none: you'll have only one class that contains all the methods getList, getUsers, getData and setUser methods - end, you'll have 4 classes : - List that contains the getList method, - User that contains the setUser method, - Users that contains the getUsers method, - Data that contains the getData method
  • _Optional_ generated classes namespace and inheritance: - \-\-namespace: prefix classes' main namespace with your namespace - \-\-standalone _(default: ```true```)_: enables/disables the installation of the PackageBase package that contains the base class from which StructType, ArrayType and ServiceType classes inherit. If enabled, you MUST provide the ```composer-name``` option - \-\-struct _(default: \WsdlToPhp\PackageBase\AbstractStructBase)_: sets the class from which StructType classes inherit, see StructInterface - \-\-structarray _(default: \WsdlToPhp\PackageBase\AbstractStructArrayBase)_: sets the class from which StructArrayType classes inherit, see StructArrayInterface - \-\-soapclient _(default: \WsdlToPhp\PackageBase\AbstractSoapClientBase)_: sets the class from which ServiceType classes inherit, see SoapClientInterface
  • _Optional_ various other options: - \-\-gentutorial _(default: ```true```)_: enables/disables the tutorial file generation - \-\-genericconstants _(default: ```false```)_: enables/disables the naming of the constants (_enumerations_) with the constant value or as a generic name: - true: ```const VALUE_DEFAULT = 'Default'``` - false: ```const ENUM_VALUE_0 = 'Default'``` - \-\-addcomments: alow to add PHP comments to classes' PHP DocBlock _(mulitple values allowed)_
  • _Optional_ configuration file to use. It loads it first, then take into account the option you pass in the command line. By default, it uses: - \-\-config: the path to any configuration file you want anywhere you want - the wsdltophp.yml.dist (provided with the source code) file located under the root folder OTHERWISE - the wsdltophp.yml file (your own file) located under the root folder OTHERWISE - the default configuration file located at src/resources/config/generator_options.yml

Usages

Command line

Download the binary file

$ wget https://phar.wsdltophp.com/wsdltophp.phar

Check its version

$ ./wsdltophp.phar --version

Display generic help

$ ./wsdltophp.phar --help

Display command line help

$ ./wsdltophp.phar generate:package --help

The most basic way

$ ./wsdltophp.phar generate:package \
    --urlorpath="http://developer.ebay.com/webservices/latest/ebaySvc.wsdl" \
    --destination="/path/to/where/the/package/must/be/generated/" \
    --composer-name="myproject/mypackage" \
    --force
$ cd /path/to/where/the/package/must/be/generated/
$ ls -la => enjoy!
$ vi tutorial.php

With full options

$ ./wsdltophp.phar generate:package \
    --urlorpath="http://developer.ebay.com/webservices/latest/ebaySvc.wsdl" \
    --login="*" \
    --password="*" \
    --proxy-host="" \
    --proxy-port=*  \
    --proxy-login="*" \
    --proxy-password="*" \
    --destination='/var/www/Api/' \
    --prefix="Api" \
    --suffix="Project" \
    --category="cat" \
    --gathermethods="start" \
    --genericconstants=false \
    --gentutorial=true \
    --standalone=true \
    --addcomments="date:2015-04-22" \
    --addcomments="author:Me" \
    --addcomments="release:1.1.0" \
    --addcomments="team:Dream" \
    --namespace="My\Project" \
    --struct="\Std\Opt\StructClass" \
    --structarray="\Std\Opt\StructArrayClass" \
    --soapclient="\Std\Opt\SoapClientClass" \
    --composer-name="myproject/mypackage" \
    --structs-folder="Structs" \
    --arrays-folder="Arrays" \
    --enums-folder="Enums" \
    --services-folder="Services" \
    --config="/path/to/your/configuration/file.yml" \
    --force
$ cd /var/www/Api/
$ ls -la => enjoy!

Debug options before actually generating the package

Remove `--force` option from the previous command line to get this result:

 Start at 2015-08-29 07:51:32
  Generation not launched, use "--force" option to force generation
  Generator's option file used: /path/to/your/configuration/file.yml
  Used generator's options:
    category: cat
    gather_methods: start
    generic_constants_names:
    generate_tutorial_file: 1
    add_comments: 2015-04-22, Me, 1.1.0, Dream
    namespace_prefix: My\Project
    standalone: 1
    struct_class: \Std\Opt\StructClass
    struct_array_class: \Std\Opt\StructArrayClass
    soap_client_class: \Std\Opt\SoapClientClass
    origin: http://developer.ebay.com/webservices/latest/ebaySvc.wsdl
    destination: /var/www/Api/
    prefix: Api
    suffix: Project
    basic_login: *
    basic_password: *
    proxy_host: 
    proxy_port: *
    proxy_login: *
    proxy_password: *
    soap_options:
    composer_name: myproject/mypackage
    structs_folder: Structs
    arrays_folder: Arrays
    enums_folder: Enums
    services_folder: Services
 End at 2015-08-29 07:51:32, duration: 00:00:00

Programmatic

Get the source code:

$ git clone https://github.com/WsdlToPhp/PackageGenerator.git wsdltophp
$ cd wsdltophp
$ composer install --no-dev

The basic way

Create a PHP script to generate the package:

$ vi generate.php

With:

<?php
require_once __DIR__ . '/vendor/autoload.php';
use WsdlToPhp\PackageGenerator\Generator\Generator;
use WsdlToPhp\PackageGenerator\ConfigurationReader\GeneratorOptions;

// Options definition
$options = GeneratorOptions::instance(/'/path/to/your/configuration/file.yml'/);
$options
    ->setOrigin('http://developer.ebay.com/webservices/latest/ebaySvc.wsdl')
    ->setDestination('/path/to/where/the/package/must/be/generated/')
    ->setComposerName('myproject/mypackage');

$generator = new Generator($options);
$generator->generatePackage();

Then execute it:

$ php generate.php

Create a PHP script to use the generate package:

$ vi use.php

With:

<?php
require_once '/path/to/where/the/package/must/be/generated/vendor/autoload.php';
use WsdlToPhp\PackageBase\AbstractSoapClientBase;
$options = array(
    AbstractSoapClientBase::WSDL_URL => 'http://developer.ebay.com/webservices/latest/ebaySvc.wsdl',
    AbstractSoapClientBase::WSDL_CLASSMAP => \MyPackage\MyPackageClassMap::get(),
);
// if getList operation is provided by the Web service
$serviceGet = new \MyPackage\ServiceType\MyPackageServiceGet($options);
$result = $serviceGet->getList();
// if addRole operation is provided by the Web service
$serviceAdd = new \MyPackage\ServiceType\MyPackageServiceAdd($options);
$result = $serviceAdd->addRole();
// ...

Execute your PHP script:

$ php use.php

Dealing with the options

<?php
require_once __DIR__ . '/vendor/autoload.php';
use WsdlToPhp\PackageGenerator\Generator\Generator;
use WsdlToPhp\PackageGenerator\ConfigurationReader\GeneratorOptions;

// Options definition
$options = GeneratorOptions::instance(/'/path/to/your/configuration/file.yml'/);
$options
    ->setCategory(GeneratorOptions::VALUE_CAT)
    ->setGatherMethods(GeneratorOptions::VALUE_START)
    ->setGenericConstantsNames(GeneratorOptions::VALUE_FALSE)
    ->setGenerateTutorialFile(GeneratorOptions::VALUE_TRUE)
    ->setStandalone(GeneratorOptions::VALUE_TRUE)
    ->setNamespacePrefix('My\Project')
    ->setAddComments(array(
        'date' => date('Y-m-d'),
        'team' => 'Dream',
        'author' => 'Me',
        'release' => '1.1.0',
    ))
    ->setNamespacePrefix('My\Project')
    ->setStructClass('\Std\Opt\StructClass')
    ->setStructArrayClass('\Std\Opt\StructArrayClass')
    ->setSoapClientClass('\Std\Opt\SoapClientClass')
    ->setOrigin('http://developer.ebay.com/webservices/latest/ebaySvc.wsdl')
    ->setDestination('/path/to/where/the/package/must/be/generated/')
    ->setPrefix('Api')
    ->setSuffix('Project')
    ->setBasicLogin($login)
    ->setBasicPassword($password)
    ->setProxyHost($proxyHost)
    ->setProxyPort($proxyPort)
    ->setProxyLogin($proxyLogin)
    ->setProxyPassword($proxyPassword)
    ->setComposerName('myproject/mypackage')
    ->setStructsFolder('Structs')
    ->setArraysFolder('Arrays')
    ->setEnumsFolder('Enums')
    ->setServicesFolder('Services');

// Generator instanciation and package generation
$generator = new Generator($options);
$generator->generatePackage();

Unit tests

You can run the unit tests with the following command:

$ phpunit

You have several `testsuite`s available which run test in the proper order:

  • command: tests command class
  • configuration: tests configuration readers
  • utils: tests utils class
  • domhandler: tests dom handlers (Basic and Wsdl + Tag)
  • model: tests models
  • container: tests containers (Model and PhpElement)
  • parser: tests parsers (SoapClient and Wsdl)
  • file: tests files generation
  • packagegenerator: tests generator methods
$ phpunit --testsuite=model

  Files folder image Files (341)  
File Role Description
Files folder imagesrc (9 directories)
Files folder imagetests (1 file, 9 directories)
Accessible without login Plain text file .editorconfig Data Auxiliary data
Accessible without login Plain text file .php_cs Data Auxiliary data
Accessible without login Plain text file .travis.yml Data Auxiliary data
Accessible without login Plain text file box.json Data Auxiliary data
Accessible without login Plain text file CASES.md Data Auxiliary data
Accessible without login Plain text file CHANGELOG.md Data Auxiliary data
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file console Data Auxiliary data
Accessible without login Plain text file LICENSE Lic. License text
Accessible without login Plain text file phpunit.xml.dist Data Auxiliary data
Accessible without login Plain text file README.md Doc. Documentation
Accessible without login Plain text file wsdltophp.yml.dist Data Auxiliary data

  Files folder image Files (341)  /  src  
File Role Description
Files folder imageCommand (2 files)
Files folder imageConfigurationReader (4 files)
Files folder imageContainer (2 files, 2 directories)
Files folder imageDomHandler (9 files, 1 directory)
Files folder imageFile (14 files)
Files folder imageGenerator (8 files)
Files folder imageModel (10 files)
Files folder imageParser (2 files, 2 directories)
Files folder imageresources (1 directory)

  Files folder image Files (341)  /  src  /  Command  
File Role Description
  Plain text file AbstractCommand.php Class Class source
  Plain text file GeneratePackageCommand.php Class Class source

  Files folder image Files (341)  /  src  /  ConfigurationReader  
File Role Description
  Plain text file AbstractYamlReader.php Class Class source
  Plain text file GeneratorOptions.php Class Class source
  Plain text file ReservedKeywords.php Class Class source
  Plain text file XsdTypes.php Class Class source

  Files folder image Files (341)  /  src  /  Container  
File Role Description
Files folder imageModel (8 files)
Files folder imagePhpElement (4 files)
  Plain text file AbstractObjectContainer.php Class Class source
  Plain text file Parser.php Class Class source

  Files folder image Files (341)  /  src  /  Container  /  Model  
File Role Description
  Plain text file AbstractModel.php Class Class source
  Plain text file EmptyModel.php Class Class source
  Plain text file Method.php Class Class source
  Plain text file Schema.php Class Class source
  Plain text file Service.php Class Class source
  Plain text file Struct.php Class Class source
  Plain text file StructAttribute.php Class Class source
  Plain text file StructValue.php Class Class source

  Files folder image Files (341)  /  src  /  Container  /  PhpElement  
File Role Description
  Plain text file AbstractPhpElement.php Class Class source
  Plain text file Constant.php Class Class source
  Plain text file Method.php Class Class source
  Plain text file Property.php Class Class source

  Files folder image Files (341)  /  src  /  DomHandler  
File Role Description
Files folder imageWsdl (3 files, 1 directory)
  Plain text file AbstractAttributeHandler.php Class Class source
  Plain text file AbstractDomDocumentHandler.php Class Class source
  Plain text file AbstractElementHandler.php Class Class source
  Plain text file AbstractNodeHandler.php Class Class source
  Plain text file AttributeHandler.php Class Class source
  Plain text file DomDocumentHandler.php Class Class source
  Plain text file ElementHandler.php Class Class source
  Plain text file NameSpaceHandler.php Class Class source
  Plain text file NodeHandler.php Class Class source

  Files folder image Files (341)  /  src  /  DomHandler  /  Wsdl  
File Role Description
Files folder imageTag (50 files)
  Plain text file AbstractDocument.php Class Class source
  Plain text file Schema.php Class Class source
  Plain text file Wsdl.php Class Class source

  Files folder image Files (341)  /  src  /  DomHandler  /  Wsdl  /  Tag  
File Role Description
  Plain text file AbstractTag.php Class Class source
  Plain text file AbstractTagImport.php Class Class source
  Plain text file AbstractTagOperationElement.php Class Class source
  Plain text file AbstractTagType.php Class Class source
  Plain text file Tag.php Class Class source
  Plain text file TagAddress.php Class Class source
  Plain text file TagAll.php Class Class source
  Plain text file TagAnnotation.php Class Class source
  Plain text file TagAny.php Class Class source
  Plain text file TagAnyAttribute.php Class Class source
  Plain text file TagAppinfo.php Class Class source
  Plain text file TagAttribute.php Class Class source
  Plain text file TagAttributeGroup.php Class Class source
  Plain text file TagBinding.php Class Class source
  Plain text file TagBody.php Class Class source
  Plain text file TagChoice.php Class Class source
  Plain text file TagComplexContent.php Class Class source
  Plain text file TagComplexType.php Class Class source
  Plain text file TagDefinitions.php Class Class source
  Plain text file TagDocumentation.php Class Class source
  Plain text file TagElement.php Class Class source
  Plain text file TagEnumeration.php Class Class source
  Plain text file TagExtension.php Class Class source
  Plain text file TagField.php Class Class source
  Plain text file TagGroup.php Class Class source
  Plain text file TagHeader.php Class Class source
  Plain text file TagImport.php Class Class source
  Plain text file TagInclude.php Class Class source
  Plain text file TagInput.php Class Class source
  Plain text file TagKey.php Class Class source
  Plain text file TagKeyref.php Class Class source
  Plain text file TagList.php Class Class source
  Plain text file TagMemberTypes.php Class Class source
  Plain text file TagMessage.php Class Class source
  Plain text file TagNotation.php Class Class source
  Plain text file TagOperation.php Class Class source
  Plain text file TagOutput.php Class Class source
  Plain text file TagPart.php Class Class source
  Plain text file TagPort.php Class Class source
  Plain text file TagPortType.php Class Class source
  Plain text file TagRedefine.php Class Class source
  Plain text file TagRestriction.php Class Class source
  Plain text file TagSchema.php Class Class source
  Plain text file TagSelector.php Class Class source
  Plain text file TagSequence.php Class Class source
  Plain text file TagSimpleContent.php Class Class source
  Plain text file TagSimpleType.php Class Class source
  Plain text file TagTypes.php Class Class source
  Plain text file TagUnion.php Class Class source
  Plain text file TagUnique.php Class Class source

  Files folder image Files (341)  /  src  /  File  
File Role Description
  Plain text file AbstractFile.php Class Class source
  Plain text file AbstractModelFile.php Class Class source
  Plain text file AbstractOperation.php Class Class source
  Plain text file ClassMap.php Class Class source
  Plain text file Composer.php Class Class source
  Plain text file FileInterface.php Class Class source
  Plain text file Operation.php Class Class source
  Plain text file OperationAnnotationBlock.php Class Class source
  Plain text file Service.php Class Class source
  Plain text file Struct.php Class Class source
  Plain text file StructArray.php Class Class source
  Plain text file StructEnum.php Class Class source
  Plain text file Tutorial.php Class Class source
  Plain text file Utils.php Class Class source

  Files folder image Files (341)  /  src  /  Generator  
File Role Description
  Plain text file AbstractGeneratorAware.php Class Class source
  Plain text file Generator.php Class Class source
  Plain text file GeneratorContainers.php Class Class source
  Plain text file GeneratorFiles.php Class Class source
  Plain text file GeneratorParsers.php Class Class source
  Plain text file GeneratorSoapClient.php Class Class source
  Plain text file SoapClient.php Class Class source
  Plain text file Utils.php Class Class source

  Files folder image Files (341)  /  src  /  Model  
File Role Description
  Plain text file AbstractDocument.php Class Class source
  Plain text file AbstractModel.php Class Class source
  Plain text file EmptyModel.php Class Class source
  Plain text file Method.php Class Class source
  Plain text file Schema.php Class Class source
  Plain text file Service.php Class Class source
  Plain text file Struct.php Class Class source
  Plain text file StructAttribute.php Class Class source
  Plain text file StructValue.php Class Class source
  Plain text file Wsdl.php Class Class source

  Files folder image Files (341)  /  src  /  Parser  
File Role Description
Files folder imageSoapClient (3 files)
Files folder imageWsdl (20 files)
  Plain text file AbstractParser.php Class Class source
  Plain text file ParserInterface.php Class Class source

  Files folder image Files (341)  /  src  /  Parser  /  SoapClient  
File Role Description
  Plain text file AbstractParser.php Class Class source
  Plain text file Functions.php Class Class source
  Plain text file Structs.php Class Class source

  Files folder image Files (341)  /  src  /  Parser  /  Wsdl  
File Role Description
  Plain text file AbstractAttributesParser.php Class Class source
  Plain text file AbstractParser.php Class Class source
  Plain text file AbstractTagImportParser.php Class Class source
  Plain text file AbstractTagInputOutputParser.php Class Class source
  Plain text file AbstractTagParser.php Class Class source
  Accessible without login Plain text file README.md Data Auxiliary data
  Plain text file TagAttribute.php Class Class source
  Plain text file TagComplexType.php Class Class source
  Plain text file TagDocumentation.php Class Class source
  Plain text file TagElement.php Class Class source
  Plain text file TagEnumeration.php Class Class source
  Plain text file TagExtension.php Class Class source
  Plain text file TagHeader.php Class Class source
  Plain text file TagImport.php Class Class source
  Plain text file TagInclude.php Class Class source
  Plain text file TagInput.php Class Class source
  Plain text file TagList.php Class Class source
  Plain text file TagOutput.php Class Class source
  Plain text file TagRestriction.php Class Class source
  Plain text file TagUnion.php Class Class source

  Files folder image Files (341)  /  src  /  resources  
File Role Description
Files folder imageconfig (3 files)

  Files folder image Files (341)  /  src  /  resources  /  config  
File Role Description
  Accessible without login Plain text file generator_options.yml Data Auxiliary data
  Accessible without login Plain text file reserved_keywords.yml Data Auxiliary data
  Accessible without login Plain text file xsd_types.yml Data Auxiliary data

  Files folder image Files (341)  /  tests  
File Role Description
Files folder imageCommand (1 file)
Files folder imageConfigurationReader (3 files)
Files folder imageContainer (6 files, 2 directories)
Files folder imageDomHandler (5 files, 1 directory)
Files folder imageFile (8 files)
Files folder imageGenerator (3 files)
Files folder imageModel (7 files)
Files folder imageParser (2 directories)
Files folder imageresources (22 files, 9 directories)
  Accessible without login Plain text file TestCase.php Test Unit test script

  Files folder image Files (341)  /  tests  /  Command  
File Role Description
  Plain text file GeneratePackageCommandTest.php Class Class source

  Files folder image Files (341)  /  tests  /  ConfigurationReader  
File Role Description
  Accessible without login Plain text file GeneratorOptionsTest.php Test Unit test script
  Accessible without login Plain text file ReservedKeywordsTest.php Test Unit test script
  Accessible without login Plain text file XsdTypesTest.php Test Unit test script

  Files folder image Files (341)  /  tests  /  Container  
File Role Description
Files folder imageModel (7 files)
Files folder imagePhpElement (3 files)
  Accessible without login Plain text file ContainerTest.php Test Unit test script
  Accessible without login Plain text file FalseObjectContainerTest.php Test Unit test script
  Accessible without login Plain text file FalseObjectTest.php Test Unit test script
  Accessible without login Plain text file ObjectContainerTest.php Test Unit test script
  Accessible without login Plain text file ObjectTest.php Test Unit test script
  Accessible without login Plain text file ParserTest.php Test Unit test script

  Files folder image Files (341)  /  tests  /  Container  /  Model  
File Role Description
  Accessible without login Plain text file MethodContainerTest.php Test Unit test script
  Accessible without login Plain text file ModelContainerTest.php Test Unit test script
  Accessible without login Plain text file SchemaContainerTest.php Test Unit test script
  Accessible without login Plain text file ServiceContainerTest.php Test Unit test script
  Accessible without login Plain text file StructAttributeContainerTest.php Test Unit test script
  Accessible without login Plain text file StructContainerTest.php Test Unit test script
  Accessible without login Plain text file StructValueContainerTest.php Test Unit test script

  Files folder image Files (341)  /  tests  /  Container  /  PhpElement  
File Role Description
  Accessible without login Plain text file ConstantTest.php Test Unit test script
  Accessible without login Plain text file MethodTest.php Test Unit test script
  Accessible without login Plain text file PropertyTest.php Test Unit test script

  Files folder image Files (341)  /  tests  /  DomHandler  
File Role Description
Files folder imageWsdl (1 file, 1 directory)
  Accessible without login Plain text file AttributeHandlerTest.php Test Unit test script
  Accessible without login Plain text file DomDocumentHandlerTest.php Test Unit test script
  Accessible without login Plain text file ElementHandlerTest.php Test Unit test script
  Accessible without login Plain text file NameSpaceHandlerTest.php Test Unit test script
  Accessible without login Plain text file NodeHandlerTest.php Test Unit test script

  Files folder image Files (341)  /  tests  /  DomHandler  /  Wsdl  
File Role Description
Files folder imageTag (8 files)
  Accessible without login Plain text file WsdlHandlerTest.php Test Unit test script

  Files folder image Files (341)  /  tests  /  DomHandler  /  Wsdl  /  Tag  
File Role Description
  Accessible without login Plain text file TagDocumentationTest.php Test Unit test script
  Accessible without login Plain text file TagEnumerationTest.php Test Unit test script
  Accessible without login Plain text file TagHeaderTest.php Test Unit test script
  Accessible without login Plain text file TagImportTest.php Test Unit test script
  Accessible without login Plain text file TagListTest.php Test Unit test script
  Accessible without login Plain text file TagMessageTest.php Test Unit test script
  Accessible without login Plain text file TagRestrictionTest.php Test Unit test script
  Accessible without login Plain text file TagUnionTest.php Test Unit test script

  Files folder image Files (341)  /  tests  /  File  
File Role Description
  Accessible without login Plain text file AbstractFile.php Test Unit test script
  Accessible without login Plain text file ClassMapTest.php Test Unit test script
  Accessible without login Plain text file ComposerTest.php Test Unit test script
  Accessible without login Plain text file ServiceTest.php Test Unit test script
  Accessible without login Plain text file StructArrayTest.php Test Unit test script
  Accessible without login Plain text file StructEnumTest.php Test Unit test script
  Accessible without login Plain text file StructTest.php Test Unit test script
  Accessible without login Plain text file TutorialTest.php Test Unit test script

  Files folder image Files (341)  /  tests  /  Generator  
File Role Description
  Accessible without login Plain text file GeneratorSoapClientTest.php Test Unit test script
  Accessible without login Plain text file GeneratorTest.php Test Unit test script
  Accessible without login Plain text file UtilsTest.php Test Unit test script

  Files folder image Files (341)  /  tests  /  Model  
File Role Description
  Accessible without login Plain text file MethodTest.php Test Unit test script
  Accessible without login Plain text file ModelTest.php Test Unit test script
  Accessible without login Plain text file ServiceTest.php Test Unit test script
  Accessible without login Plain text file StructAttributeTest.php Test Unit test script
  Accessible without login Plain text file StructTest.php Test Unit test script
  Accessible without login Plain text file StructValueTest.php Test Unit test script
  Accessible without login Plain text file WsdlTest.php Test Unit test script

  Files folder image Files (341)  /  tests  /  Parser  
File Role Description
Files folder imageSoapClient (3 files)
Files folder imageWsdl (15 files)

  Files folder image Files (341)  /  tests  /  Parser  /  SoapClient  
File Role Description
  Accessible without login Plain text file FunctionsTest.php Test Unit test script
  Accessible without login Plain text file SoapClientParser.php Test Unit test script
  Accessible without login Plain text file StructsTest.php Test Unit test script

  Files folder image Files (341)  /  tests  /  Parser  /  Wsdl  
File Role Description
  Accessible without login Plain text file TagAttributeTest.php Test Unit test script
  Accessible without login Plain text file TagComplexTypeTest.php Test Unit test script
  Accessible without login Plain text file TagDocumentationTest.php Test Unit test script
  Accessible without login Plain text file TagElementTest.php Test Unit test script
  Accessible without login Plain text file TagEnumerationTest.php Test Unit test script
  Accessible without login Plain text file TagExtensionTest.php Test Unit test script
  Accessible without login Plain text file TagHeaderTest.php Test Unit test script
  Accessible without login Plain text file TagImportTest.php Test Unit test script
  Accessible without login Plain text file TagIncludeTest.php Test Unit test script
  Accessible without login Plain text file TagInputTest.php Test Unit test script
  Accessible without login Plain text file TagListTest.php Test Unit test script
  Accessible without login Plain text file TagOutputTest.php Test Unit test script
  Accessible without login Plain text file TagRestrictionTest.php Test Unit test script
  Accessible without login Plain text file TagUnionTest.php Test Unit test script
  Accessible without login Plain text file WsdlParser.php Test Unit test script

  Files folder image Files (341)  /  tests  /  resources  
File Role Description
Files folder imagedirectapi (3 files)
Files folder imageews (3 files)
Files folder imageexisting_config (1 file)
Files folder imagegenerated (45 files)
Files folder imageimage (7 files)
Files folder imagelnp (3 files)
Files folder imagepartner (23 files)
Files folder imagepaypal (4 files)
Files folder imagewcf (5 files)
  Accessible without login Plain text file ActonService2.local.wsdl Data Auxiliary data
  Accessible without login Plain text file ActonService2.wsdl Data Auxiliary data
  Accessible without login Plain text file aukro.wsdl Data Auxiliary data
  Accessible without login Plain text file bad_generator_options.yml Data Auxiliary data
  Accessible without login Plain text file bad_reserved_keywords.yml Data Auxiliary data
  Accessible without login Plain text file bad_xsd_types.yml Data Auxiliary data
  Accessible without login Plain text file bingsearch.wsdl Data Auxiliary data
  Accessible without login Plain text file bullhornstaffing.local.wsdl Data Auxiliary data
  Accessible without login Plain text file empty.wsdl Data Auxiliary data
  Accessible without login Plain text file generator_options.yml Data Auxiliary data
  Accessible without login Plain text file MyBoardPack.wsdl Data Auxiliary data
  Accessible without login Plain text file numeric_enumeration.xml Data Auxiliary data
  Accessible without login Plain text file odigeo.wsdl Data Auxiliary data
  Accessible without login Plain text file OmnitureAdminServices.wsdl Data Auxiliary data
  Accessible without login Plain text file OrderContract.wsdl Data Auxiliary data
  Accessible without login Plain text file portaplusapi.wsdl Data Auxiliary data
  Accessible without login Plain text file QueueService.wsdl Data Auxiliary data
  Accessible without login Plain text file reformagkh.wsdl Data Auxiliary data
  Accessible without login Plain text file reserved_keywords.yml Data Auxiliary data
  Accessible without login Plain text file whl.wsdl Data Auxiliary data
  Accessible without login Plain text file xmlmime.xml Data Auxiliary data
  Accessible without login Plain text file xsd_types.yml Data Auxiliary data

  Files folder image Files (341)  /  tests  /  resources  /  directapi  
File Role Description
  Accessible without login Plain text file adgroups.wsdl Data Auxiliary data
  Accessible without login Plain text file campaigns.wsdl Data Auxiliary data
  Accessible without login Plain text file general.xsd Data Auxiliary data

  Files folder image Files (341)  /  tests  /  resources  /  ews  
File Role Description
  Accessible without login Plain text file messages.xsd Data Auxiliary data
  Accessible without login Plain text file services.wsdl Data Auxiliary data
  Accessible without login Plain text file types.xsd Data Auxiliary data

  Files folder image Files (341)  /  tests  /  resources  /  existing_config  
File Role Description
  Accessible without login Plain text file wsdltophp.yml Data Auxiliary data

  Files folder image Files (341)  /  tests  /  resources  /  generated  
File Role Description
  Accessible without login Plain text file ValidActonApiService.php Test Unit test script
  Accessible without login Plain text file ValidActonClassMap.php Test Unit test script
  Accessible without login Plain text file ValidActonTutorial.php Test Unit test script
  Accessible without login Plain text file ValidAddRequest.php Test Unit test script
  Accessible without login Plain text file ValidAdGroupsSelectionCriteria.php Test Unit test script
  Accessible without login Plain text file ValidApiAdultOption.php Test Unit test script
  Accessible without login Plain text file ValidApiArrayOfError.php Test Unit test script
  Accessible without login Plain text file ValidApiArrayOfErrorProject.php Test Unit test script
  Accessible without login Plain text file ValidApiArrayOfNewsRelatedSearch.php Test Unit test script
  Accessible without login Plain text file ValidApiArrayOfString.php Test Unit test script
  Accessible without login Plain text file ValidApiArrayOfWebSearchOption.php Test Unit test script
  Accessible without login Plain text file ValidApiAuthenticate.php Test Unit test script
  Accessible without login Plain text file ValidApiCreate.php Test Unit test script
  Accessible without login Plain text file ValidApiDelete.php Test Unit test script
  Accessible without login Plain text file ValidApiDo.php Test Unit test script
  Accessible without login Plain text file ValidApiDs_weblog_formats.php Test Unit test script
  Accessible without login Plain text file ValidApiFareItinerary.php Test Unit test script
  Accessible without login Plain text file ValidApiHouseStageEnum.php Test Unit test script
  Accessible without login Plain text file ValidApiItem.php Test Unit test script
  Accessible without login Plain text file ValidApiLogin.php Test Unit test script
  Accessible without login Plain text file ValidApiNewsArticle.php Test Unit test script
  Accessible without login Plain text file ValidApiOffer.php Test Unit test script
  Accessible without login Plain text file ValidApiPhonebookSortOption.php Test Unit test script
  Accessible without login Plain text file ValidApiPhonebookSortOptionApi.php Test Unit test script
  Accessible without login Plain text file ValidApiQuery.php Test Unit test script
  Accessible without login Plain text file ValidApiSaint.php Test Unit test script
  Accessible without login Plain text file ValidApiSearch.php Test Unit test script
  Accessible without login Plain text file ValidApiSearchBingApi.php Test Unit test script
  Accessible without login Plain text file ValidApiSearchRequest.php Test Unit test script
  Accessible without login Plain text file ValidApiSourceType.php Test Unit test script
  Accessible without login Plain text file ValidApiVideoRequest.php Test Unit test script
  Accessible without login Plain text file ValidApiWebSearchOption.php Test Unit test script
  Accessible without login Plain text file ValidBingApiService.php Test Unit test script
  Accessible without login Plain text file ValidBingClassMap.php Test Unit test script
  Accessible without login Plain text file ValidBingComposer.json Data Auxiliary data
  Accessible without login Plain text file ValidBingComposer.php53.json Data Auxiliary data
  Accessible without login Plain text file ValidBingTutorial.php Test Unit test script
  Accessible without login Plain text file ValidBingTutorialNoPrefix.php Test Unit test script
  Accessible without login Plain text file ValidBingTutorialNotStandalone.php Test Unit test script
  Accessible without login Plain text file ValidMyProjectApiSearchProject.php Test Unit test script
  Accessible without login Plain text file ValidOmnitureApiService.php Test Unit test script
  Accessible without login Plain text file ValidOmnitureTutorial.php Test Unit test script
  Accessible without login Plain text file ValidPayPalApiService.php Test Unit test script
  Accessible without login Plain text file ValidReformaClassMap.php Test Unit test script
  Accessible without login Plain text file ValidReformaTutorial.php Test Unit test script

  Files folder image Files (341)  /  tests  /  resources  /  image  
File Role Description
  Accessible without login Plain text file availableImagesRequest.xsd Data Auxiliary data
  Accessible without login Plain text file availableImagesResponse.xsd Data Auxiliary data
  Accessible without login Plain text file imagesRequest.xsd Data Auxiliary data
  Accessible without login Plain text file imagesResponse.xsd Data Auxiliary data
  Accessible without login Plain text file imageViewCommon.xsd Data Auxiliary data
  Accessible without login Plain text file ImageViewService.local.wsdl Data Auxiliary data
  Accessible without login Plain text file ImageViewService.wsdl Data Auxiliary data

  Files folder image Files (341)  /  tests  /  resources  /  lnp  
File Role Description
  Accessible without login Plain text file CommonIdsModel.xsd Data Auxiliary data
  Accessible without login Plain text file NumberManagement.wsdl Data Auxiliary data
  Accessible without login Plain text file NumberManagementModel.xsd Data Auxiliary data

  Files folder image Files (341)  /  tests  /  resources  /  partner  
File Role Description
  Accessible without login Plain text file PartnerService.0.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.1.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.10.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.11.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.12.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.13.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.14.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.15.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.16.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.17.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.18.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.2.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.3.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.4.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.5.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.6.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.7.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.8.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.9.xsd Data Auxiliary data
  Accessible without login Plain text file PartnerService.local.scd.wsdl Data Auxiliary data
  Accessible without login Plain text file PartnerService.local.third.wsdl Data Auxiliary data
  Accessible without login Plain text file PartnerService.local.wsdl Data Auxiliary data
  Accessible without login Plain text file PartnerService.wsdl Data Auxiliary data

  Files folder image Files (341)  /  tests  /  resources  /  paypal  
File Role Description
  Accessible without login Plain text file CoreComponentTypes.xsd Data Auxiliary data
  Accessible without login Plain text file eBLBaseComponents.xsd Data Auxiliary data
  Accessible without login Plain text file EnhancedDataTypes.xsd Data Auxiliary data
  Accessible without login Plain text file PayPalSvc.wsdl Data Auxiliary data

  Files folder image Files (341)  /  tests  /  resources  /  wcf  
File Role Description
  Accessible without login Plain text file Service1.wsdl Data Auxiliary data
  Accessible without login Plain text file Service1.xsd Data Auxiliary data
  Accessible without login Plain text file Service10.wsdl Data Auxiliary data
  Accessible without login Plain text file Service10.xsd Data Auxiliary data
  Accessible without login Plain text file Service11.xsd Data Auxiliary data

The PHP Classes site has supported package installation using the Composer tool since 2013, as you may verify by reading this instructions page.
Install with Composer Install with Composer
 Version Control Unique User Downloads Download Rankings  
 100%
Total:407
This week:0
All time:6,511
This week:524Up
 User Ratings  
 
 All time
Utility:91%StarStarStarStarStar
Consistency:91%StarStarStarStarStar
Documentation:83%StarStarStarStarStar
Examples:-
Tests:66%StarStarStarStar
Videos:-
Overall:69%StarStarStarStar
Rank:308