public function checkPerms($session_uid) { if (!$this->get_fid()) { // 找不到资源 return FALSE; } if ($this->uid == $session_uid) { // 资源是自己的 return TRUE; } $sql = "SELECT * FROM `fs_fileentry_sharelog` WHERE `fid` = " . $this->get_fid(); $this->connectDB(); $query = self::$db->query($sql); $perms_mix_id = array(); while ($row = self::$db->fetchArray($query)) { $perms_mix_id[] = $row['mix_id']; } if (!$perms_mix_id) { //没有分享记录 return FALSE; } $photoModel = new Photo(); $perms = $photoModel->getAllMixid(array('group', 'action', 'friend'), $session_uid); $permission = FALSE; foreach ($perms_mix_id as $mix_id) { foreach ($perms as $perm) { if ($perm == $mix_id) { $permission = TRUE; //匹配权限 break; } } if ($permission) { break; } } return $permission; }