コード例 #1
0
ファイル: generate-schema.php プロジェクト: kankje/xi-filelib
    {
        AnnotationRegistry::registerFile(__DIR__ . '/../vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/Driver/DoctrineAnnotations.php');
        $driver = new AnnotationDriver(new CachedReader(new AnnotationReader(), new ArrayCache()), array(__DIR__ . '/../library/Xi/Filelib/Backend/Adapter/DoctrineOrm/Entity'));
        $config = new Configuration();
        $config->setMetadataDriverImpl($driver);
        $config->setProxyDir(ROOT_TESTS . '/data/temp');
        $config->setProxyNamespace('Proxies');
        $em = EntityManager::create($this->connectionOptions, $config);
        $st = new SchemaTool($em);
        $metadata = $st->getCreateSchemaSql($em->getMetadataFactory()->getAllMetadata());
        return join(";\n", $metadata) . ";\n";
    }
}
if ($argc < 2) {
    echo <<<EOT
usage: php {$argv['0']} <driver>

example: php {$argv['0']} sqlite
example: php {$argv['0']} mysql
example: php {$argv['0']} pgsql

EOT;
    die;
}
$options['driver'] = 'pdo_' . $argv[1];
$options['host'] = '127.0.0.1';
// $options['username'] = '******';
// $options['password'] = '******';
// $options['dbname'] = 'dbname';
$generator = new SchemaGenerator($options);
echo $generator->generate();
コード例 #2
0
<?php

require_once dirname(__FILE__) . "/../main/bootstrap.php";
require_once dirname(__FILE__) . "/SchemaGenerator.php";
$args = array();
if (isset($argv)) {
    foreach ($argv as $k => $v) {
        if ($k == 0) {
            continue;
        }
        $it = explode("=", $argv[$k]);
        if (isset($it[1])) {
            $args[$it[0]] = $it[1];
        }
    }
}
$gen = new SchemaGenerator('test');
if (isset($_REQUEST["submitForm"])) {
    $gen->run($_REQUEST);
} else {
    $gen->form();
}
コード例 #3
0
ファイル: XmlSerializer.php プロジェクト: pdiveris/api_ht
 /**
  * generateSchema
  *
  * @param $className
  * @return \DOMDocument
  */
 static function generateSchema($className)
 {
     $g = new SchemaGenerator();
     return $g->generate($className);
 }