2011-06-23 15 views
5

PHPで少し助けてもらえますか?PHP:JSON配列を逆にする方法

元のコードは正常ですが、出力が間違っています。 JSON配列の順序/順序を逆にする必要があります。

しかし、私は以下のPHP(抜粋)コードでシーケンスを逆にしてみてください。それは、出力順序を逆にdoesntの

$json = file_get_contents($url,0,null,null); 
$tmp = json_decode($json, true); // using a temp variable for testing 
$result = array_reverse($tmp);  // <--new line to reverse the arrray 

foreach ($result['data'] as $event) { 
    echo '<div>'.$event['name'].'</div>'; 

私は間違っていますか? 別の方法がありますか?

PS - 私はJavascriptでできますが、私はそれをサーバー側で行う必要があります。

答えて

6

あなたは元に戻しますが、間違ったフィールドで行います。あなたは、配列の代わりにdataフィールドを逆にする:

$json = file_get_contents($url,0,null,null); 
$tmp = json_decode($json, true); // using a temp variable for testing 
$result = $tmp; 
$result['data'] = array_reverse($result['data']); 

foreach ($result['data'] as $event) { 
    echo '<div>'.$event['name'].'</div>'; 
+0

私は誰もがだけでなく、あなたがブリリアントそれを説明しなかったすべての読み取りで - 感謝。 @hakre – user801347

4

$tmp['data']アレイの内容を逆にする必要があります。$tmpではなく、それを逆にする必要があります。

$json = file_get_contents($url); 
$tmp = json_decode($json, true); 
$result = array_reverse($tmp['data']); 

unset($tmp); 

foreach ($result as $event) { 
    echo '<div>'.$event['name'].'</div>'; 
} 
+0

良い視力を..... – dynamic

関連する問題