PHP code example of tienvx / pact-php-xml

1. Go to this page and download the library: Download tienvx/pact-php-xml library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

tienvx / pact-php-xml example snippets




aronDDM\XMLBuilder\Exception\XMLBuilderException;
use PhpPact\Consumer\Matcher;
use Tienvx\PactPhpXml\Model\Options;
use Tienvx\PactPhpXml\XmlBuilder;

$builder = new XmlBuilder();
$matcher = new Matcher();

try {
    $builder
        ->root(
            $builder->name('ns1:projects'),
            $builder->attribute('id', '1234'),
            $builder->attribute('xmlns:ns1', 'http://some.namespace/and/more/stuff'),
            $builder->add(
                $builder->eachLike(examples: 2),
                $builder->name('ns1:project'),
                $builder->attribute('id', $matcher->integerV3(1)),
                $builder->attribute('type', 'activity'),
                $builder->attribute('name', $matcher->string('Project 1')),
                $builder->attribute('due', $matcher->datetime("yyyy-MM-dd'T'HH:mm:ss.SZ", '2016-02-11T09:46:56.023Z')),
                $builder->add(
                    $builder->name('ns1:tasks'),
                    $builder->add(
                        $builder->eachLike(examples: 5),
                        $builder->name('ns1:task'),
                        $builder->attribute('id', $matcher->integerV3(1)),
                        $builder->attribute('name', $matcher->string('Task 1')),
                        $builder->attribute('done', $matcher->boolean()),
                    ),
                ),
            ),
        );

    var_dump($builder->getArray());
} catch (XMLBuilderException $e) {
    var_dump('An exception occurred: ' . $e->getMessage());
}
shell
composer