-
Notifications
You must be signed in to change notification settings - Fork 44
Home
moyarada edited this page Aug 23, 2010
·
36 revisions
h1. XSD to PHP
h2. Overview
XSD to PHP is a set of classes which allow you to compile XSD schemas to PHP classes, marshal PHP classes to XML, and unmarshal XML to PHP classes.
h2. Features
h2. Requirements
h2. Planned features
h2. Usage
h3. Compile schema
use com\mikebevz\xsd2php;
$xsd2php = new xsd2php\Xsd2Php("path/to/schema.xsd");
$xsd2php->saveClasses("path/to/generated/files", true);
Second argument in saveClasses method defines whether create a directory if it doesn't exist. See test/Xsd2PhpTest.php for examples.
h3. Marshalling XML
On example of UBL Order schema:
use com\mikebevz\xsd2php;
use oasis\names\specification\ubl\schema\xsd\Order_2;
$order = new Order_2\Order(); // Generated PHP model
// set $order properties here
$php2xml = new xsd2php\Php2Xml();
$xml = $php2xml->getXml($order);
h3. Unmarshalling XML
use com\mikebevz\xsd2php;
$xml = file_get_contents('path/to/your.xml');
$model = new yourModel();
$bind = new xsd2php\Bind();
$myUnmarshalledModel = $bind->bindXml($xml, $model);
h2. Running tests
From command line $ phpunit will start all available tests.