示例#1
0
文件: Dt.php 项目: tokushima/rhaco3
 /**
  * Daoモデルの一覧
  * @automap
  */
 public function model_list()
 {
     $list = $errors = $error_query = $model_list = $con = array();
     foreach (self::classes('\\org\\rhaco\\store\\db\\Dao') as $class_info) {
         $class = $class_info['class'];
         $r = new \ReflectionClass($class);
         $class_doc = $r->getDocComment();
         $package = str_replace('\\', '.', substr($class, 1));
         $document = trim(preg_replace("/@.+/", '', preg_replace("/^[\\s]*\\*[\\s]{0,1}/m", '', str_replace(array('/' . '**', '*' . '/'), '', $class_doc))));
         list($summary) = explode("\n", $document);
         $errors[$package] = null;
         $con[$package] = true;
         try {
             \org\rhaco\store\db\Dao::start_record();
             $class::find_get();
             \org\rhaco\store\db\Dao::stop_record();
         } catch (\org\rhaco\store\db\exception\NotfoundDaoException $e) {
         } catch (\org\rhaco\store\db\exception\DaoConnectionException $e) {
             $errors[$package] = $e->getMessage();
             $con[$package] = false;
         } catch (\Exception $e) {
             $errors[$package] = $e->getMessage();
             $error_query[$package] = print_r(\org\rhaco\store\db\Dao::recorded_query(), true);
         }
         $model_list[$package] = $summary;
     }
     ksort($model_list);
     $this->vars('dao_models', $model_list);
     $this->vars('dao_model_errors', $errors);
     $this->vars('dao_model_error_query', $error_query);
     $this->vars('dao_model_con', $con);
     $this->vars('getcwd', getcwd());
 }