Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP utf8_解码不返回任何字符,如â€Â&引用;来自MySQL_Php_Mysql_Encoding_Utf 8 - Fatal编程技术网

PHP utf8_解码不返回任何字符,如â€Â&引用;来自MySQL

PHP utf8_解码不返回任何字符,如â€Â&引用;来自MySQL,php,mysql,encoding,utf-8,Php,Mysql,Encoding,Utf 8,我的SQL数据库中的某些行有问题。数据库中存在具有以下字符的列的行: 梅西百货™购买1和我们™我将捐赠1美分 我已经知道,当我将这些行插入表中时,我搞砸了。我有一个.csv文件,其中有许多行带有UTF-8字符,这些字符是通过抓取一些网页填充的我知道我不应该使用utf8_decode来解码来自MySQL的数据,我应该在将数据插入表时使用正确的编码。但是,重新抓取数据并重新插入会带来很大不便,因此我现在正在寻求此解决方案。 当我尝试使用utf8\u decode($row[“description”

我的SQL数据库中的某些行有问题。数据库中存在具有以下字符的列的行:

梅西百货™购买1和我们™我将捐赠1美分

我已经知道,当我将这些行插入表中时,我搞砸了。我有一个
.csv
文件,其中有许多行带有UTF-8字符,这些字符是通过抓取一些网页填充的我知道我不应该使用utf8_decode来解码来自MySQL的数据,我应该在将数据插入表时使用正确的编码。但是,重新抓取数据并重新插入会带来很大不便,因此我现在正在寻求此解决方案。

当我尝试使用
utf8\u decode($row[“description”])
时,其中
$row[“description”]
是上面的字符串,输出为空,我得到一个错误。我有如下代码:

$events[] = array(
     'description' => utf8_decode($row['description']),
     // some other fields...
);
var events = <?php echo json_encode($events); ?>;
当我尝试将php数组回送到javascript中时,如下所示:

$events[] = array(
     'description' => utf8_decode($row['description']),
     // some other fields...
);
var events = <?php echo json_encode($events); ?>;

下面是我回显行的
utf8\u decode
d版本时的输出。上半部分是解码版本,当撇号正确显示时正确解码。但是,在下半部分,您可以看到撇号被替换为奇怪的a-hat字符


这让我更加困惑——为什么我可以回显
utf8\u解码的
$row[“description”]
版本,但不能将其放入数组中?

我通过在� 性格看起来这是输出中唯一的问题。

尝试确保它是UTF-8 stringI did
echo mb_check_编码(utf8_decode($row['description'))。得到所有的1(我假设为真)在中看到“Mojibake”。另外,看到。