Как отобразить URL, который используется в команде curl / Как сделать возвращаемые китайские символы читабельными? - PullRequest
0 голосов
/ 14 июня 2019
  1. Как я могу отобразить URL, который я использую для скручивания данных вместе с показанными данными?

  2. Мой сервер неправильно отображает китайские иероглифы из этого скручивания. Как я могу это исправить?

function mobile_number(){

        $tel = isset($_GET['tel'])?$_GET['tel']:’';

        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, 'https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=' . $tel);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        $resp = curl_exec($curl);


        print_r($resp); 
    }

Это результат, который я получаю:

__GetZoneResult_ = { mts:'1357465', province:'����', catName:'�й��ƶ�', telString:'13574652375', areaVid:'30514', ispVid:'3236139', carrier:'�����ƶ�’ }

1 Ответ

0 голосов
/ 14 июня 2019

это проблема с тем, что вы используете для просмотра результатов.

например, если вы используете веб-браузер для просмотра результатов, проблема заключается в том, что вы не говорите веб-браузеру интерпретировать его как Unicode, а ваш браузер пытается интерпретировать его как ASCII или что-то подобное, в этом случае исправить это добавить

header("Content-Type: text/plain;charset=utf-8"); вверху вашего скрипта.

если вы используете терминал .. idk, возможно, попробуйте использовать лучший терминал? Баш может быть?

PS, вы уязвимы для введения переменных и искажения переменных в строке 6 (например, число +47123123 будет преобразовано в 47123123, + будет потеряно!) Код должен быть

curl_setopt($curl, CURLOPT_URL, 'https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=' . urlencode($tel));
...