【发布时间】:2018-01-20 04:36:20
【问题描述】:
我在 curl 请求中出现了一个奇怪的字符 â 而不是引号和双引号
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8');
我正在使用 php domelement 来操作结果
$fulltext = $doc->getElementsByTagName('p');
foreach($fulltext as $para) {
$fulltextstr .= $para->textContent;
}
除了引号和双引号被替换为 â 之外,它大部分都有效,我该如何替换它。
我试过了
echo htmlspecialchars($fulltextstr,ENT_SUBSTITUTE,'UTF-8');
但这不会删除字符,有没有办法通过替换或者如果不可能,然后删除这些字符来清理输出!?
获取此链接时遇到此问题: https://www.dissentmagazine.org/article/coping-economy-mindfulness-goes-corporate
更多详情
我在元标题中设置了 utf-8,我正在使用
mb_regex_encoding('UTF-8');
mb_internal_encoding('UTF-8');
网站标头设置为 UTF-8:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
我还能做什么?!
【问题讨论】:
-
你用什么来显示你的 PHP 输出?可能是您的浏览器获取了不正确的编码标头,或者您的终端使用了错误的编码。该字符(我相信)是一个 UTF-8 字符。
-
我已经用 utf8 设置更新了问题。有什么我想念的吗?!