php - 欧元符号编码 - PHP

标签 php curl encoding euro

我尝试了很多不同的方法,但无法显示欧元符号。 我正在使用 cURL 来解析页面。该页面采用 ISO-8859-1 编码

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

页面上有一个欧元符号,当我使用时

$curl_scraped_page = curl_exec($ch);

我刚刚得到了一颗黑色钻石,里面有一个问号。

我在这个网站上看到了很多相关的问题和答案,但它们并没有真正起作用。

编辑:我尝试使用以下内容:

$curl_scraped_page = preg_replace('/charset=(.*)"/', 'charset="UTF-8"', $curl_scraped_page);

$curl_scraped_page = iconv('iso-8859-1', 'UTF-8', $curl_scraped_page);

$curl_scraped_page = utf8_encode(curl_exec($ch));

我想另一个问题是,要显示欧元符号,我需要使用UTF-8还是ISO-8859-1?

编辑2:我已经尝试过:

echo "Encoding is $enc";
echo iconv($enc, "ISO-8859-1", $curl_scraped_page);

结果是:

Encoding is ISO-8859-1

但仍然没有欧元符号。 当我查看页面源代码时,它仍然显示菱形问号,但当我单击浏览器上的“查看”并将其更改为 ISO-8859-1 时,会出现欧元符号。那么这是浏览器问题吗?

最佳答案

尝试为curl设置标题

$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"; 
curl_setopt($ch, CURLOPT_HTTPHEADER, $header); 

curl 有可能默认使用“UTF-8”连接。

编辑:

当你用“utf8_decode”将其转换为iso时会发生什么?

PHP: curl_setopt

关于php - 欧元符号编码 - PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10566221/

相关文章:

php - 解析 JSON 数据时出错。 JSONException : End of input at character

vb.net - 写入没有字节顺序标记 (BOM) 的文本文件?

C-WinAPI : Why does UTF-8 encoded characters show as Chinese in Listview?

php - 用PHP5解析PDF表单字段的最佳实践

php - Mysql CURDATE() 不适用于时间戳类型

ssl - drupal 控制台命令上的 GuzzleHttp 异常

c - 如何在C中运行shell命令

linux - curl POST 和 GET 响应

java - 当我以 pdf 形式向占位符插入值时,如何设置 iText 的编码?

php - 在 select 上锁定 mysql 数据库表行