我有一些像这样的JSON:
{"100":{"id":100,"name":"example"},"200":{"id":200,"name":"example2"}}
我将其转换为数组:
[100] => Array
(
[id] => 100
[name] => "example"
)
[200] => Array
(
[id] => 200
[name] => "example"
)
我想返回一个随机[id] - 或一个随机数组名称,因为它们与ID相同。我怎么能这样做?
我试过了:
$src = "http://domain.com/json.json";
$data = file_get_contents($src);
$obj = json_decode($data, true);
$rand = array_rand($obj);
echo strval($obj[$rand]);
哪个输出:
Notice: Array to string conversion in C:/Users/Will/Documents/PHP/TestJson.php on line 7
Array
我希望它输出100或200。
答案 0 :(得分:3)
$jsonArr = json_decode($str, TRUE);
$rand_array_key = array_rand($jsonArr);
echo $jsonArr[$rand_array_key]['id'];