Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 循环CSV并使用每个结果解析JSON查询_Php_Json_Parsing_Csv - Fatal编程技术网

Php 循环CSV并使用每个结果解析JSON查询

Php 循环CSV并使用每个结果解析JSON查询,php,json,parsing,csv,Php,Json,Parsing,Csv,因此,尽管经过数小时的修改,我还是无法理解为什么我的JSON查询只返回我试图解析的CSV/TXT文件中最后一行的结果 代码如下: //Enter API Key Here $api_key = 'AIzaSyB9Dq3w1HCxkS5qyELI_pZuTmdK8itOBHo'; $origin = 'RG12 1AA'; $output_type = 'json'; //xml or json $csv_location = 'http://www.naturedock.co.uk/postco

因此,尽管经过数小时的修改,我还是无法理解为什么我的JSON查询只返回我试图解析的CSV/TXT文件中最后一行的结果

代码如下:

//Enter API Key Here
$api_key = 'AIzaSyB9Dq3w1HCxkS5qyELI_pZuTmdK8itOBHo';
$origin = 'RG12 1AA';
$output_type = 'json'; //xml or json
$csv_location = 'http://www.naturedock.co.uk/postcodes.csv';

//Do not edit
$base_url = 'https://maps.googleapis.com/maps/api/directions/';
$origin_url = '?origin=';
$destination_url = '&destination=';
$end_url = '&sensor=false&key=';

$page = join("",file("$csv_location"));
$kw = explode("\n", $page);

for($i=0;$i<count($kw);$i++){
    $destination = $kw[$i];
    echo $destination;
    $raw_url = $base_url . $output_type . $origin_url . $origin . $destination_url . $destination . $end_url . $api_key;
    $request_url = str_replace(' ', '', $raw_url);

    $getJson = file_get_contents($request_url);
    $routes = json_decode($getJson);

    $result = $routes->routes[0]->legs[0]->distance->value;
    echo $result . '<br>';
}
其中“4066”是RG12 0GD邮政编码的正确变量,但其他变量都不会返回您可以看到的结果

请帮忙。

join("",file("$csv_location"));
将文件中的所有行连接到一行,不带分隔符。下面的explode()不再显示新行。所以你只在一条线上工作。count($kw)始终计算为1,并且循环只运行一次

join("",file("$csv_location"));