2017-11-20 5 views
0

こんにちはすべて私はタイムスタンプを格納しています。私はasort()を使用してそれらを並べ替えると、それぞれforeachを通過したいですが、私が持っているもの:PHPはソートされた配列にforeachを使用しています

$sorted_dates = asort($dates_to_sort); 

のvar_dump:

array(4) { [2]=> int(1512086400) [3]=> int(1512432000) [1]=> int(1513036800) [0]=> int(1514073600) } 

のForeach:

foreach ($sorted_dates as $value) { 
    echo "<br>".$value."<br>"; 
} 

エラー:

Warning: Invalid argument supplied for foreach() 

私はそれをエコー以上のことを行う必要があるとして、私は、アレイを通過することができますどのように任意のアイデア。

答えて

4

asortbooleanを返します。ブール値を反復処理することはできません。

// your code should be like 
asort($dates_to_sort); 
foreach ($dates_to_sort as $value) { 
    echo "<br>".$value."<br>"; 
} 
1

あなたはforeach()ない$sorted_dates$dates_to_sortを渡す必要があります。同様に:

foreach ($dates_to_sort as $value) { 
    echo "<br>".$value."<br>"; 
} 

asort()は、参照することにより、入力を受け取り、boolを返すので。参照:

bool asort (array &$array [, int $sort_flags = SORT_REGULAR ]) 
0

asortはソートが成功したかではない場合はfalse /ブール値trueを返し、参照によって配列をソートします。

asort($dates_to_sort); 
foreach ($dates_to_sort as $value) { 
    echo "<br>".$value."<br>"; 
} 
関連する問題