我有以下PHP代码:
<?php
# URL #1
$ch = curl_init('http://www.google.com/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_exec($ch);
# get the content type
$content_type = curl_getinfo($ch, CURLINFO_CONTENT_TYPE);
echo $content_type;
echo "<br>";
# URL #2
$ch = curl_init('http://www.lemonde.fr/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_exec($ch);
# get the content type
$content_type = curl_getinfo($ch, CURLINFO_CONTENT_TYPE);
echo $content_type;
?>
返回以下结果:
text / html charset = UTF-8
text / html的
所以我错过了第二个URL的字符集。我检查了html代码,charset就在那里。
为什么curl_getinfo在第二种情况下没有得到字符集?
答案 0 :(得分:1)
此信息不会在HTML代码中发送,而是在HTTP标头中发送。如果curl_getinfo调用没有返回它,则服务器不会在其HTTP头中发送它。