【发布时间】:2014-08-12 18:52:33
【问题描述】:
我有一个奇怪的场景,array_multisort 函数只有在它作用的数组大于它成功作用的前一个数组时才成功返回。
我正在获取大量数据,提取数据的子集,然后对子集进行排序并输出它们。 array_multisort 适用于具有 10 个条目的第一个子集。然后它在接下来的三个具有少于 10 个条目的子集上失败,但在具有 16 个条目的第四个子集上成功。然后它在一个有 18 个条目的子集上成功,但在接下来的 6 个子集上都失败了,这些子集都少于 18 个条目。就这样继续下去,只有当条目数大于最后一次成功排序时才会成功。
在我输出可能有帮助的结果后,我为这两个数组添加了 unset 命令。
for($k=0; $k<$num_category_skaters; $k++)
{
$skater_sort[$k][FirstName] = $category_skaters[$k][FirstName];
$skater_sort[$k][LastName] = $category_skaters[$k][LastName];
$skater_sort[$k][Gender] = $category_skaters[$k][Gender];
$skater_sort[$k][PartnerFirstName] = $category_skaters[$k][PartnerFirstName];
$skater_sort[$k][PartnerLastName] = $category_skaters[$k][PartnerLastName];
}
//print_r($skater_sort);
// Obtain a list of columns
foreach ($skater_sort as $key => $row)
{
$FirstName[$key] = $row['FirstName'];
$LastName[$key] = $row['LastName'];
$PartnerFirstName[$key] = $row['PartnerFirstName'];
$PartnerLastName[$key] = $row['PartnerLastName'];
$BirthDate[$key] = $row['BirthDate'];
$Gender[$key] = $row['Gender'];
// now sort the columns
}
$error=array_multisort($LastName, SORT_ASC, $FirstName, SORT_ASC, $PartnerFirstName, SORT_ASC, $PartnerLastName, SORT_ASC, $Gender, SORT_ASC, $skater_sort);
任何指导都将不胜感激。 谢谢
【问题讨论】:
标签: array-multisort