首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从google map api获取json,而不是使用php,错误的charater编码。

从google map api获取json,而不是使用php,错误的charater编码。
EN

Stack Overflow用户
提问于 2015-04-21 12:33:00
回答 1查看 394关注 0票数 0

我想打印我如何能从"A“城市到"B”城市。我使用PHP和Google。我已经可以这样做了,但是当打印结果时,字符编码是不正确的。

如果我将GET参数设置为:origin=Cegléd,那么Google将无法工作,但是如果我像这样设置它:origin=Cegled,那么Google就能工作了。我设置了utf-8字符编码,所以我不明白为什么它不能工作。

代码语言:javascript
复制
<?php

    header ('Content-Type: application/json; charset=utf8');

    $a="---";
    $origin=$_GET['origin'];
    $destination=$_GET['destination'];

    $url = "http://maps.googleapis.com/maps/api/directions/json?origin=";
    $url = $url . $origin;
    $url = $url . "&destination=";
    $url = $url . $destination;
    $url=  $url . "&language=hu-HU&ie=utf8";

    echo $url;
    echo $a;

    $json = file_get_contents($url);
    $data = json_decode(utf8_encode($json),true);

    echo $data['routes'][0]['legs'][0]['distance']['text'];
    echo $a;
    echo $data['routes'][0]['legs'][0]['distance']['value'];
    echo $a;
    echo '
         ';
    $inc=1;
    for($i=0;$i<count($data['routes'][0]['legs'][0]['steps']);$i++){

        $subject = $data['routes'][0]['legs'][0]['steps'][$i]['html_instructions'];
        $search1 = '<b>';
        $search2 = '</b>';
        $trimmed = str_replace($search1, '', $subject);
        $result =  str_replace($search2, '', $trimmed);


        echo $inc .". lépés:" . $result;
        echo '
             ----';
        echo $a;
        $inc++;
    }

?>

这段代码没有显示正确的字符。我不知道为什么。

这个例子显示器:

�p�s:Haladjon tov圣保罗圣保罗--圣保罗-2l�p�s:Forduljon jobbra 1. keresztutc圣保罗-3l�p�s:Folytassa az utat erre: Mars t c r-4。l�p�s:Folytassa az utat erre: P.-5l�p�s:Folytassa az utat erre: Berlini krt./43。T-6l�p�s:Forduljon balra,k--圣保罗:

EN

回答 1

Stack Overflow用户

发布于 2015-04-21 19:13:51

来自Google的JSON响应可能已经用UTF-8编码了。您应该跳过utf8_encode()调用:

代码语言:javascript
复制
$data = json_decode(utf8_encode($json),true);

对UTF-8数据进行两次编码通常会产生额外的ÂÃ和其他类似字符.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29772350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档