当前位置: 首页>>代码示例>>PHP>>正文


PHP CUtils::arrayRemove方法代码示例

本文整理汇总了PHP中CUtils::arrayRemove方法的典型用法代码示例。如果您正苦于以下问题:PHP CUtils::arrayRemove方法的具体用法?PHP CUtils::arrayRemove怎么用?PHP CUtils::arrayRemove使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CUtils的用法示例。


在下文中一共展示了CUtils::arrayRemove方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: handlerSetPermission

 /**
  *
  * 列举共享信息
  *
  * @since 1.1.0
  */
 public function handlerSetPermission()
 {
     $this->_file = UserFile::model()->findByAttributes(array('id' => $this->_id, 'is_deleted' => 0));
     if (is_null($this->_file)) {
         throw new ApiException('Not Found');
     }
     //判断此用户是否有 分配 权限
     $file_path = $this->_file["file_path"];
     $hasPermissionAllot = Yii::app()->privilege->hasPermission($file_path, MPrivilege::PERMISSION_GRANT);
     if (!$hasPermissionAllot) {
         $this->result["msg"] = Yii::t('front_common', 'Can not grant permission');
         throw new ApiException('Can not grant permission');
     }
     //
     // 将逗号分割的id组装成数组
     //
     if (!empty($this->_slaves)) {
         $this->_slaves = array_slice(explode(',', $this->_slaves), 0);
     } else {
         $this->_slaves = array();
     }
     $this->_permissions = array_slice(explode(',', $this->_permissions), 0);
     $tmpUser = $this->_slaves;
     //查询出此路径下的直接权限的所有用户
     $privileges = MUserPrivilege::model()->findAll('file_path=:file_path', array(':file_path' => $this->_file["file_path"]));
     $currentUser = MUserManager::getInstance()->getCurrentUser();
     foreach ($privileges as $pri) {
         //分配权限时如果权限表中的权限的所有者是自己, 则不进行处理
         if ($pri["user_id"] == $currentUser["id"]) {
             continue;
         }
         //如果此用户不存在则进行添加权限,已经存在则进行修改权限,否则进行删除权限操作
         if (in_array($pri["user_id"], $tmpUser)) {
             $newPermission = $this->getUserPermission($this->_slaves, $pri["user_id"]);
             //进行是否事件生成判断
             $this->updatePrivelegeEvent($pri, $newPermission);
             //更新权限
             Yii::app()->privilege->updatedPrivilege($pri["user_id"], $this->_file["file_path"], $newPermission);
             $tmpUser = CUtils::arrayRemove($tmpUser, $pri["user_id"]);
         } else {
             $pri->delete();
             $this->deletePrivelegeEvent($pri["user_id"], $pri["file_path"], unserialize($pri["permission"]));
         }
     }
     //创建权限
     foreach ($tmpUser as $index => $userId) {
         $permission = $this->getUserPermission($this->_slaves, $userId);
         $this->createPrivelegeEvent($userId, $this->_file["file_path"], $permission);
         Yii::app()->privilege->createPrivilege($userId, $this->_file["file_path"], $permission);
     }
 }
开发者ID:youngsun45,项目名称:miniyun,代码行数:57,代码来源:MPermissionManager.php


注:本文中的CUtils::arrayRemove方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。