从PHP返回的JSON对象为NULL

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从PHP返回的JSON对象为NULL相关的知识,希望对你有一定的参考价值。

我试图使用AJAX向php发送一个javascript变量(placeid)。我使用此变量来检索JSON对象。返回Javascript的JSON为NULL。我该如何解决?

function sendToPhp(placeid){
var url = "finals.php?placeid="+placeid;
var getJSONObj=function(url,callback){
var httpc = new XMLHttpRequest(); 
httpc.open("GET", url, true);
httpc.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
httpc.responseType='json';
httpc.onload= function(){
    var status=httpc.status;
    if(status==200){
        //alert(httpc.response);
        callback(null,httpc.response);
    }
    else{
        callback(status,httpc.response);
         }
   };
httpc.send();
 };

  getJSONObj(url,function(err,jsonObjectReturned){

    if(err!==null){
        alert("something went wrong"+ err);
    }
    else
    {
        alert("success");
        alert(jsonObjectReturned);   // **returns NULL**
    }
});
}  // end of function

PHP脚本使用placeid返回JSON文件,如下所示:

    if(isset($_GET['placeid']))
    {
        $placeid= $_GET['placeid'];
        $apikey="someKeyValue";
        $url="https://maps.googleapis.com/maps/api/place/details/json?placeid=".$placeid."&key=".$apikey;
        $jsonPlacesObject=json_decode(htmlspecialchars(@file_get_contents($url),true),true);
        echo json_encode($jsonPlacesObject);  //sending json to javascript**
        die();
    }

以上是关于从PHP返回的JSON对象为NULL的主要内容,如果未能解决你的问题,请参考以下文章

PHP 获取JSON json_decode返回NULL解决办法

将json数据发送到php返回null

Flutter 从 Json 转换嵌套对象返回 null

ajax传值php页面接收处理为json 有值 但返回为null 求解

PHP 数组中出现中文乱码,json_encode返回结果为null 或false

如何从 PHP 中获取远程 JSON 或 XML API 数据并将返回对象分配为 PHP 变量?