PHP curl_getinfo($ ch,CURLINFO_CONTENT_TYPE)不返回字符集

时间:2011-01-20 13:09:35

标签: php curl character-encoding

我有以下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在第二种情况下没有得到字符集?

1 个答案:

答案 0 :(得分:1)

此信息不会在HTML代码中发送,而是在HTTP标头中发送。如果curl_getinfo调用没有返回它,则服务器不会在其HTTP头中发送它。