我正在集成聊天page.Below是聊天users.However用户可以通过两种方式访问聊天页面的列表
1) http://domain/chat
一般来说,输出类似于
Array
(
[0] => Array
(
[id] => 1
[creater_id] => 6
[receiver_id] => 7
)
[1] => Array
(
[id] => 3
[creater_id] => 6
[receiver_id] => 11
)
[2] => Array
(
[id] => 4
[creater_id] => 6
[receiver_id] => 13
)
)2) id=11在本例中,我希望输出类似于
Array
(
[0] => Array
(
[id] => 3
[creater_id] => 6
[receiver_id] => 11
)
[1] => Array
(
[id] => 1
[creater_id] => 6
[receiver_id] => 7
)
[2] => Array
(
[id] => 4
[creater_id] => 6
[receiver_id] => 13
)
)如能提供任何帮助,将不胜感激:)
发布于 2017-04-20 07:24:16
要排序的数组是$arr,所需的第一个键是$receiver_id。
uksort($arr, function($a, $b) use($receiver_id, $arr) {
if($arr[$a]["receiver_id"] == $receiver_id) {
return -1;
} elseif($arr[$b]["receiver_id"] == $receiver_id) {
return 1;
} else {
return $a < $b ? -1 : 1;
}
});发布于 2017-04-20 07:29:37
最佳实践是从MYSQL中进行排序,但是您也可以尝试这样做。
$a = array(array('a' => 1, 'b' => 2), array('a' => 3, 'b' => 4), array('a' => 5, 'b' => 6), array('a' => 7, 'b' => 8));
$temp = array();
foreach ($a as $key => $value)
{
if($value['b'] == 6)
{
$temp[] = $a[$key];
unset($a[$key]);
}
}
echo "<pre>";
print_r(array_merge($temp , $a)); exit;https://stackoverflow.com/questions/43512595
复制相似问题