error = '插件目录不可读或者不存在'; return FALSE; } $addons = array(); $where['name'] = array('in',$dirs); $list = $this->where($where)->field(true)->select(); foreach($list as $addon){ $addon['uninstall'] = 0; $addons[$addon['name']] = $addon; } foreach ($dirs as $value) { if(!isset($addons[$value])){ $class = get_addon_class($value); if(!class_exists($class)){ // 实例化插件失败忽略执行 \Think\Log::record('插件'.$value.'的入口文件不存在!'); continue; } $obj = new $class; $addons[$value] = $obj->info; if($addons[$value]){ $addons[$value]['uninstall'] = 1; $addons[$value]['status'] = -2; } } } $addons = list_sort_by($addons,'uninstall','desc'); return $addons; } }