php数组在foreach中排序

标签 php arrays array-multisort

我正在尝试订购一个由 foreach 循环生成的数组,这是我的代码:

$lowestvar = array();

foreach ($variations as $variation){
    $lowestvar[] = $variation['price_html'];            
}

然后我像这样使用 array_multisort:

array_multisort($lowestvar, SORT_ASC);
print_r($lowestvar);

这适用于输出为的第一个循环项:

Array ( [0] => £10.00 [1] => £15.00 ) 

但是循环中的第二个数组看起来像这样:

Array ( [0] => £10.00 [1] => £5.00 ) 

关于我哪里出错的任何想法?

最佳答案

您正在对 STRINGS 进行排序,这意味着 10 < 5是真的。请记住,字符串排序是逐个字符进行的,而不是按“整个值”进行的。

关于php数组在foreach中排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22941845/

相关文章:

javascript - HTML 输入类型=日期 工作日

php - 多重排序子数组——包含范围数据的子数组

php - 如何在 PHP 中对多个数组进行排序

javascript - 使用javascript从文件夹中获取图像大小

php - file_get_contents() 使用的内存在未分配给变量时是否被释放?

php - PHP:合并多维数组,按特定键分组

javascript - 强制javascript键整数用null填充数组

javascript - 表单提交()不提交

php - curl - SPNEGO 无法找到协商机制

arrays -\@array 在 Perl 中是什么意思?