[英]How can I sort an array from 2 fields?
I have the following format of an array我有以下格式的数组
[HomeTeam] => Brazil
[AwayTeam] => Croatia
How can I sort the array based on home and away teams.如何根据主队和客队对数组进行排序。
So all Brazil will come first if they are a Home or an away team.因此,无论是主队还是客队,所有巴西队都会排在第一位。
Do I need an array_multisort?我需要一个 array_multisort 吗? I've given it a try, but not getting the right results.我试过了,但没有得到正确的结果。
use usort
:使用usort
:
usort($myArray, function($a, $b) {
return $a > $b;
});
you will need to modify return
condition depending on how you want it to be sorted.您将需要根据您希望的排序方式修改return
条件。
On www.php.net you can find this function:在 www.php.net 上你可以找到这个函数:
<?php
function array_orderby()
{
$args = func_get_args();
$data = array_shift($args);
foreach ($args as $n => $field) {
if (is_string($field)) {
$tmp = array();
foreach ($data as $key => $row)
$tmp[$key] = $row[$field];
$args[$n] = $tmp;
}
}
$args[] = &$data;
call_user_func_array('array_multisort', $args);
return array_pop($args);
}
? >
you can use it like this:你可以这样使用它:
$sorted = array_orderby($data, 'field', SORT_ASC);
Source:: http://nl1.php.net/manual/en/function.array-multisort.php来源:: http://nl1.php.net/manual/en/function.array-multisort.php
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.