首页 >php教程 >php手册 >用户权限管理代码

用户权限管理代码

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB原创
2016-05-22 18:36:151366浏览

<?php
define(&#39;PATTERN_MODE_INT&#39;, 1);
define(&#39;PATTERN_MODE_STRING&#39;, 2);
function bitToArray($data, $ruleArr, $mode = PATTERN_MODE_INT) {
    $varData = array();
    if ($mode == PATTERN_MODE_INT) {
        $usedBit = 0;
        for ($i = 0; $i < Count($ruleArr); $i++) {
            if ($ruleArr[$i] <= 0) continue;
            $turnData = pow(2, $ruleArr[$i]) - 1 << $usedBit & $data;
            $varData[$i] = $turnData >> $usedBit;
            $usedBit+= $ruleArr[$i];
        }
    } else {
        for ($i = 0, $cnt = Count($ruleArr); $i < $cnt; $i++) {
            $varData[$i] = substr($data, $i, $ruleArr[$i]);
        }
    }
    return $varData;
}
function arrayToBit($data, $ruleArr, $mode = PATTERN_MODE_INT) {
    $rslt = &#39;&#39;;
    if ($mode == PATTERN_MODE_INT) {
        $usedBit = 0;
        $rslt = 0;
        for ($i = 0; $i < Count($ruleArr); $i++) {
            if ($ruleArr[$i] <= 0) continue;
            if (!$data[$i]) $data[$i] = 0;
            $rslt|= $data[$i] << $usedBit;
            $usedBit+= $ruleArr[$i];
        }
    } else {
        for ($i = 0, $cnt = Count($ruleArr); $i < $cnt; $i++) {
            $rslt.= sprintf(&#39;%0&#39; . $ruleArr[$i] . &#39;s&#39;, $data[$i]);
        }
    }
    return $rslt;
}


永久地址:

转载随意~请带上教程地址吧^^

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn