<?php /** * Data export * @param string $file */ if (empty($file)) { $file = getcwd() . '/dao.dump'; } \ebi\Util::file_write($file, ''); foreach (\ebi\Dt::classes(\ebi\Dao::class) as $class_info) { $class_name = \ebi\Util::get_class_name($class_info['class']); $cnt = 0; foreach (call_user_func([$class_name, 'find']) as $obj) { \ebi\Util::file_append($file, json_encode(['model' => $class_name, 'data' => $obj->props()]) . PHP_EOL); $cnt++; } \cmdman\Std::println_info('Export ' . $class_name . ' (' . $cnt . ')'); } \cmdman\Std::println_success(PHP_EOL . 'Writen: ' . $file);
foreach (new \RecursiveDirectoryIterator($cmndir, \FilesystemIterator::SKIP_DOTS | \FilesystemIterator::UNIX_PATHS) as $f) { if (substr($f->getFilename(), 0, 1) != '_' && substr($f->getFilename(), -4) == '.php') { $mode_list[] = substr($f->getFilename(), 0, -4); } } } $default = empty($appmode) || array_search($appmode, $mode_list) !== false ? $appmode : 'local'; $mode = \cmdman\Std::read('Application mode', $default, $mode_list); $settings_file = getcwd() . '/__settings__.php'; $path = getcwd(); file_put_contents($settings_file, '<?php' . PHP_EOL . 'define(\'APPMODE\',\'' . $mode . '\');' . PHP_EOL . 'define(\'COMMONDIR\',\'' . $cmndir . '\');' . PHP_EOL); \cmdman\Std::println_success('Written: ' . realpath($settings_file)); if (!is_file($f = $cmndir . '/' . $mode . '.php')) { \ebi\Util::file_write($f, <<<'__SRC__' <?php \ebi\Conf::set([ ]); __SRC__ ); \cmdman\Std::println_success('Written: ' . realpath($f)); } if ($mode != $appmode) { \cmdman\Std::println_info('Application mode changed.'); return; } else { \cmdman\Std::println_info('Application mode is `' . $mode . '`'); } if (!is_file($f = $path . '/bootstrap.php')) { $autoload_file = ''; if (class_exists('Composer\\Autoload\\ClassLoader')) { $r = new \ReflectionClass('Composer\\Autoload\\ClassLoader'); $composer_dir = dirname($r->getFileName());