PHP CURL响应中的问号

时间:2013-01-24 14:45:44

标签: php curl encoding character-encoding

我想使用一个带API的网站, 我有这个代码:

$ch=curl_init('http://example.com/?api=**');
$options = array(
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => array('text/plain;charset=UTF-8') ,
);

curl_setopt_array( $ch, $options );
$results=curl_exec($ch);
var_dump($results);

但是我看到?而不是»等字符。 我检查了源页面,charset是utf-8 .. 什么是问题?

1 个答案:

答案 0 :(得分:7)

我猜你错过了选项 CURLOPT_ENCODING

请尝试以下代码。

$ch = curl_init('http://example.com/?api=**');
curl_setopt($ch, CURLOPT_HTTPHEADER, 'text/plain;charset=UTF-8');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8');
$results = curl_exec($ch);
var_dump($results);