Google QPX Express API PHP

Google QPX Express API PHP,php,json,api,Php,Json,Api,我正在尝试使用QPX Express API为我的网站搜索航班 我不知道怎么跑 curl -d @request.json --header "Content-Type: application/json" https://www.googleapis.com/qpxExpress/v1/trips/search?key=xxxxxxxxxxxxxx 从我的php文件。我应该如何管理json文件。我想我应该制作一个php文件并设置头类型,对吗 我在任何地方都找不到任何东西您不需要为每个请求创

我正在尝试使用QPX Express API为我的网站搜索航班

我不知道怎么跑

curl -d @request.json --header "Content-Type: application/json" https://www.googleapis.com/qpxExpress/v1/trips/search?key=xxxxxxxxxxxxxx
从我的php文件。我应该如何管理json文件。我想我应该制作一个php文件并设置头类型,对吗


我在任何地方都找不到任何东西

您不需要为每个请求创建并保存实际的JSON文件。您只需创建一个JSON字符串并将其作为POST负载发送即可。至于执行curl,您应该看到中提供的本机函数。具体而言,是、、和。这里有一个例子

$url = "https://www.googleapis.com/qpxExpress/v1/trips/search?key=YOUR_API_KEY_HERE";

$postData = '{
  "request": {
    "passengers": {
      "adultCount": 1
    },
    "slice": [
      {
        "origin": "BOS",
        "destination": "LAX",
        "date": "2016-05-10"
      },
      {
        "origin": "LAX",
        "destination": "BOS",
        "date": "2016-05-15"
      }
    ]
  }
}';

$curlConnection = curl_init();

curl_setopt($curlConnection, CURLOPT_HTTPHEADER, array("Content-Type: application/json"));
curl_setopt($curlConnection, CURLOPT_URL, $url);
curl_setopt($curlConnection, CURLOPT_POST, TRUE);
curl_setopt($curlConnection, CURLOPT_POSTFIELDS, $postData);
curl_setopt($curlConnection, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($curlConnection, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlConnection, CURLOPT_SSL_VERIFYPEER, FALSE);

$results = curl_exec($curlConnection);
还可以使用数组创建有效负载,然后使用将其转换为JSON字符串

$postData = array(
    "request" => array(
        "passengers" => array(
            "adultCount" => 1
        ),
        "slice" => array(
            array(
                "origin" => "BOS",
                "destination" => "LAX",
                "date" => "2016-05-10"
            ),
            array(
                "origin" => "LAX",
                "destination" => "BOS",
                "date" => "2016-05-15"
            )
        )
    )
);
然后使用

curl_setopt($curlConnection, CURLOPT_POSTFIELDS, json_encode($postData));

谢谢成功了。现在我从那里得到了json的东西。现在的问题是我无法解析它。我得到:
print\r($flightsarray[0]->trips->data->airport[0])结果提示:尝试获取非对象的属性。我还尝试使用
$flightsarray[0][1][1]
将生成的JSON转换为对象或数组,以您喜欢的为准。如果您对解析此API的结果有特定问题,那么应该为此创建一个新问题。