public static function push_all() { $parameter = config::param(); $git_dir = $parameter[0]; if (!empty($git_dir)) { chdir("vendor/{$git_dir}"); } self::add(); self::push(); }
/** * 复原所有表 */ public static function reset() { $dir = config::database() . '/migrations/'; $file = scandir($dir); unset($file[0]); unset($file[1]); foreach ($file as $name) { $name = pathinfo($name)['filename']; $namespace = 'Console\\Database\\migrations\\' . $name; $obj = new $namespace(); $obj->down(); echo "\ndelete {$name} successfully"; } }
public static function getConnection() { if (isset(self::$connect)) { return self::$connect; } $config = config::db(); $new_config = array('dsn' => "{$config['type']}:host={$config['hostname']};port={$config['hostport']};dbname={$config['database']}", 'username' => $config['username'], 'password' => $config['password']); try { self::$connect = new \PDO($new_config['dsn'], $new_config['username'], $new_config['password']); } catch (PDOException $e) { print "错误: " . $e->getMessage() . "<br />"; print "行号: " . $e->getLine() . "<br />"; die; } self::$connect->query("SET NAMES {$config['charset']}"); return self::$connect; }
public static function seed() { $param = config::param(); $table_name = $param[0]; $dir = config::database() . '/seeds/'; if (strpos($table_name, '--class=') !== false) { $table_name = explode('=', $table_name); $table_name = end($table_name); if (is_file($dir . $table_name . '.php')) { $sql = file_get_contents($dir . $table_name . '.php'); self::insert($sql); echo "\nseed table {$table_name} successfully"; } } else { $file = scandir($dir); unset($file[0]); unset($file[1]); foreach ($file as $name) { $sql = file_get_contents($dir . $name); self::insert($sql); echo "\nseed {$name} successfully"; } } }
public static function buildBehaviors($module, $controller) { $tempPath = config::get('behaviors_path'); $file = config::app_path() . '/' . $module . '/behaviors/' . $controller . '.php'; if (!is_file($file)) { $content = file_get_contents($tempPath); $content = str_replace(array('[MODULE]', '[CONTROLLER]'), array($module, $controller), $content); if (false) { $content = preg_replace('/namespace\\s(.*?);/', '', $content, 1); } $dir = dirname($file); if (!is_dir($dir)) { mkdir($dir, 0755, true); } file_put_contents($file, $content); } }
/** * 创建行为 */ public static function behaviors() { $param = config::param(); $arr = System\Directory::explode($param['0']); if (empty($arr[0]) || empty($arr[1])) { return "[0;41;1m module name is null;Enter module/behaviors\n"; } if (empty($param[1])) { Build::buildBehaviors($arr['0'], $arr[1]); } }