Goetas\Xsd\XsdToPhp\Tests\JmsSerializer\OTA\AnyTypePHPConversionTest::getPhpClasses PHP Method

getPhpClasses() protected method

protected getPhpClasses ( mixed $xml, array $types = [] ) : ClassGenerator[]
$xml mixed
$types array
return Zend\Code\Generator\ClassGenerator[]
    protected function getPhpClasses($xml, array $types = array())
    {
        $creator = new PhpConverter(new ShortNamingStrategy());
        $creator->addNamespace('', 'Example');
        foreach ($types as $typeData) {
            list($ns, $name, $type) = $typeData;
            $creator->addAliasMapType($ns, $name, $type);
        }
        $generator = new ClassGenerator();
        $reader = new SchemaReader();
        if (!is_array($xml)) {
            $xml = ['schema.xsd' => $xml];
        }
        $schemas = [];
        foreach ($xml as $name => $str) {
            $schemas[] = $reader->readString($str, $name);
        }
        $items = $creator->convert($schemas);
        $classes = array();
        foreach ($items as $k => $item) {
            $codegen = new \Zend\Code\Generator\ClassGenerator();
            if ($generator->generate($codegen, $item)) {
                $classes[$k] = $codegen;
            }
        }
        return $classes;
    }