protected function checkIndex($appinfo)
 {
     if (file_exists($appinfo['BASE_DIR'])) {
         if (!is_dir($appinfo['BASE_DIR']) || !is_writable($appinfo['BASE_DIR'])) {
             $this->error[] = "项目目录不可写入:" . $appinfo['BASE_DIR'];
         }
     } else {
         mkdir($appinfo['BASE_DIR'], 0777, true);
     }
     chdir($appinfo['BASE_DIR']);
     $app_basepath = realpath(dirname($appinfo['APP_PATH']));
     if (!$app_basepath) {
         $this->error[] = "无法创建目录:" . $appinfo['APP_PATH'] . ",大概它的父目录不存在。";
     } elseif (!is_writable($app_basepath)) {
         $this->error[] = "无法创建目录:" . $appinfo['APP_PATH'] . ",大概{$app_basepath}的权限不足。";
     }
     if (!is_file($appinfo['THINK_PATH'] . 'ThinkPHP.php')) {
         $this->error[] = "无法找到框架核心文件,‘项目目录’和‘THINK_PATH’之一填错鸟...";
     }
     if (!CheckConfig::isBool($appinfo['APP_DEBUG'])) {
         $this->error[] = "APP_DEBUG需要布尔值true或false";
     }
     if (!CheckConfig::isWord($appinfo['APP_NAME'])) {
         $this->error[] = "APP_NAME 只允许英文字符数字和下划线";
     }
     if (is_file($appinfo['INDEX_FILE'])) {
         $this->error[] = "入口文件已存在";
     }
     if (is_dir($appinfo['APP_PATH'] . "Lib")) {
         $this->error[] = "项目目录似乎已存在,请更改目录";
     }
     if (!CheckConfig::isFile($appinfo['INDEX_FILE'])) {
         $this->error[] = "入口文件 只允许英文字符、数字、点和下划线,不允许数字开头";
     }
     if (!CheckConfig::isChars($appinfo['project'])) {
         $this->error[] = "项目命名不允许特殊字符";
     }
     chdir(APP_PATH);
     if ($this->error) {
         return false;
     }
     return true;
 }