簡體   English   中英

JSON(PHP)中的反向鍵值數組

[英]Reverse key value array in JSON (PHP)

我在php中有這樣的鍵值數組

[1]=>"something"
[2]=>"somethingelse"
[4]=>"this"

現在我想將其導出為json,反轉數組,但保留索引。 所以json格式看起來像

{
    "4":"this",
    "2":"somethingelse"
    "1":"something"
}

有沒有簡單的方法來完成此操作(無需手動解析json)?

您需要將鍵保留在array_reverse中才能正常工作。

<?php
$arr=array(1=>"something",2=>"somethingelse",4=>"this");
echo json_encode(array_reverse($arr,true),true);

OUTPUT :

{"4":"this","2":"somethingelse","1":"something"}

您可以為此使用array_flip()

$array = array(1 => 'one', 2 => 'two');

$arrayFlipped = array_flip($array);

/*
$arrayFlipped:

Array
(
   [one] => 1
   [two] => 2
)
*/
$reverse = array_reverse($array, true);
$json = json_encode ($reverse);

如果要反轉數組的順序,最好先將其轉換為JSON。 您可以使用array_reverse()函數執行此操作,您需要將第二個參數設置為TRUE才能保留索引。

<?php
$myArray = Array(
    1 => "something",
    2 => "somethingelse",
    4 => "this"
);

$myJSON = json_encode( array_reverse( $myArray, true ) );

print_r( $myJSON );
?>
$arr = array(
    1 => "something",
    2 => "somethingelse",
    4 => "this"
);

$arr = array_reverse($arr,true); // true!

echo json_encode($arr);

array_reverse

Example:

$arr = array("apple","banana","orange");
$reversed = array_reverse($arr,true);
echo json_encode($reversed);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM