2012-02-19 110 views
0

代码有效,直到我尝试使用asort函数对切片进行排序,然后当我运行此命令时,我只是得到一个空白页面。有任何想法吗?如何洗牌,切片,然后在PHP中重新排序数组?

<?php 
$arange = range(1 , 80, 1); 

shuffle($arange); 

$shufl = array_slice($arange, 0, 5); 

$sortshufl = asort($shufl, SORT_NUMERIC); 


foreach ($sortshufl as $number) { 

    echo "$number "; 
} 

?> 
+0

启用错误报告并将其设置为E_ALL,它应该告诉你什么是错的。 – 2012-02-19 10:32:43

回答

1

asort()排序到位数组,并返回一个布尔值,所以你的结果是$shufl

foreach($shufl as $number) { 
    echo "$number "; 
} 

启用PHP错误报告,您将避免错误的空白页面。

4

asort返回一个布尔值,而不是排序的数组。它意味着关联数组。

使用普通的sort函数(也返回一个布尔值,将数组“排序”)。

sort($shufl, SORT_NUMERIC); 
foreach ($shufl as $number) { 
    echo "$number "; 
} 
+0

谢谢你们,我现在启用了错误报告功能,而且我的代码已修复:) – Dee1983 2012-02-19 10:49:03