今天修改信息页,要查许多人的排序,第一次登陆进去之后查询一遍,放入session中,以后就可以直接读取了。后来遇到一个问题,当换账号进来后还是之前的session,所有又把user_id加入session中,先判断user_id是否相同
if( $_SESSION['user_id'] == $member_id ){
if( $_SESSION['integral_num'] ){
$integral_num = $_SESSION['integral_num'];
}
if( $_SESSION['branch_order'] ){
$branch_order = $_SESSION['branch_order'];
}
if( $_SESSION['jiedao_order'] ){
$jiedao_order = $_SESSION['jiedao_order'];
}
}
二维数组根据某一个字段排序
$person_all = $this -> my_sort( $integral_num_all, 'member_inter', SORT_DESC );
function my_sort($arrays,$sort_key,$sort_order=SORT_ASC,$sort_type=SORT_NUMERIC ){
if(is_array($arrays)){
foreach ($arrays as $array){
if(is_array($array)){
$key_arrays[] = $array[$sort_key];
}else{
return false;
}
}
}else{
return false;
}
array_multisort($key_arrays,$sort_order,$sort_type,$arrays);
return $arrays;
}
某一个字段在二维数组中的key值
$jiedao_order = $this->deep_in_array( $member_id, $person_all );
function deep_in_array($value, $array) {
foreach($array as $key => $item) {
if(!is_array($item)) {
if ($item == $value) {
return $key;
} else {
continue;
}
}
if(in_array($value, $item)) {
return $key;
} else if($this->deep_in_array($value, $item)) {
return $key;
}
}
return false;
}