* * Arguments: * db The database namespace defined in $lc_databases of config.php [default: "default"] * * @package PHPLucidFrame\Console * @since PHPLucidFrame v 1.14.0 * @copyright Copyright (c), PHPLucidFrame. * @author Sithu K. <*****@*****.**> * @link http://phplucidframe.com * @license http://www.opensource.org/licenses/mit-license.php MIT License * * This source file is subject to the MIT license that is bundled * with this source code in the file LICENSE */ use LucidFrame\Core\SchemaManager; _consoleCommand('schema:export')->setDescription('Process the schema and export the database sql dump file')->addArgument('db', 'The database namespace defined in $lc_databases of config.php', 'default')->setDefinition(function (\LucidFrame\Console\Command $cmd) { $db = $cmd->getArgument('db'); $schema = _schema($db); if ($schema === null) { _writeln('Failed to load schema.'); } elseif ($schema === false) { _writeln('Unable to find the schema file "%s".', DB . 'schema.' . $db . '.php'); } else { $sm = new SchemaManager($schema); if ($sm->export($db)) { _writeln('"%s" has been exported.', DB . 'generated' . _DS_ . 'schema.' . $db . '.sql'); } else { _writeln('No sql file is exported.'); } } })->register();