Ejemplo n.º 1
0
 /**
  * 把db对象转换为array
  * @param object $item
  * @return array|null
  */
 private function db2Item($item)
 {
     if (isset($item)) {
         $user = array();
         $user["id"] = $item->id;
         $user["user_id"] = $item->id;
         $user["user_uuid"] = $item->user_uuid;
         $user["user_name"] = $item->user_name;
         $user["user_pass"] = $item->user_pass;
         $user["user_status"] = $item->user_status == 0 ? false : true;
         $user["user_pass"] = $item->user_pass;
         $user["user_status"] = $item->user_status;
         $user["salt"] = $item->salt;
         $user["created_at"] = $item->created_at;
         $user["updated_at"] = $item->updated_at;
         //查询用户Meta信息
         $avatar = Yii::app()->params["defaultAvatar"];
         if (!MiniHttp::isConsole()) {
             $avatar = MiniHttp::getMiniHost() . $avatar;
         }
         $user["avatar"] = $avatar;
         $user["nick"] = $user["user_name"];
         $user["phone"] = "";
         $user["email"] = "";
         $user["space"] = MUtils::defaultTotalSize();
         $user["is_admin"] = false;
         $metas = MiniUserMeta::getInstance()->getUserMetas($user["id"]);
         foreach ($metas as $key => $value) {
             if ($key === "nick") {
                 $user["nick"] = $value;
             }
             if ($key === "phone") {
                 $user["phone"] = $value;
             }
             if ($key === "email") {
                 $user["email"] = $value;
             }
             if ($key === "space") {
                 $user["space"] = $value;
             }
             if ($key === "is_admin") {
                 $user["is_admin"] = $value === "1" ? true : false;
             }
             if ($key === 'file_sort_type') {
                 $user["file_sort_type"] = $value;
             }
             if ($key === 'file_sort_order') {
                 $user["file_sort_order"] = $value;
             }
         }
         //获得用户头像,如本地没有图片,则重新下载原始图片
         if (array_key_exists("avatar", $metas)) {
             $value = $metas["avatar"];
             if (strpos($value, "http") === 0) {
                 $user["avatar"] = $value;
             } else {
                 $savePath = THUMBNAIL_TEMP . "avatar";
                 $path = $savePath . '/' . $value;
                 if (!file_exists($path)) {
                     if (!file_exists($savePath)) {
                         mkdir($savePath);
                     }
                     $url = $metas["avatar_url"];
                     file_put_contents($path, file_get_contents($url));
                 }
                 $user["avatar"] = MiniHttp::getMiniHost() . "assets/thumbnails/avatar/" . $value;
             }
         }
         return $user;
     }
     return NULL;
 }