PHP 从 Android studio volley 接收 JSON 对象获取请求

PHP receive JSON object from Android studio volley Get request

我正在使用 Android studio 使用 volley 发送 GET 请求。我包括一个 HashMAP 参数(称为 whereArray)。我的 URL 来自截击请求的请求看起来像这样...

https://xxxxxxxx.co.za/api/select_from_fact_sighting.php?whereArray={country_name=Botswana, region=Southern Africa}

我需要在服务器端使用此参数的帮助 - 我想循环遍历它并将其内爆到 sql where 子句中。但是我正在努力解码我的 php 脚本中的数组(我假设它应该转换为 Json 对象?)。我在尝试解码数组的 php 函数中包含了一个片段。

public function select_from_fact_sighting($whereArray) {

    $jsonArray = json_decode($whereArray);
    $elementCount  = count($jsonArray); ```

$whereArray 中的值为 {country_name=Botswana, region=Southern Africa} 但是 $jsonArray 中的值是空的并且 $elementCount 是 0 暗示 json 解码数组中没有任何内容。在解码 PHP 中的参数和遍历结果数组方面的任何帮助将不胜感激。

谢谢

{country_name=Botswana, region=Southern Africa} 不是有效的 JSON,应该是 {"country_name": "Botswana", "region": "Southern Africa"}

此外,json_decode() returns 默认是一个对象,而不是数组,如果你想要一个数组,你需要传递 true 作为第二个参数:json_decode($whereArray, true)

查看文档:PHP json_decode()