Php 未知字符࿽;将excel导入MySQL后,如何避免?

Php 未知字符࿽;将excel导入MySQL后,如何避免?,php,mysql,excel,import,character,Php,Mysql,Excel,Import,Character,可能重复: 我已经从一个excel文件将大约1000条记录导入MySQL。但现在我明白了� 在一些文本之间。好像是双引号 导入数据时如何避免这种情况 在网页中打印数据时,是否可以使用str_replace()函数来处理此问题 使用preg_replace对所有无法识别的字符进行正则表达式替换 例如: $data = preg_replace("/[^a-zA-Z0-9]/", "", $data); 此示例将替换所有非字母数字字符(非a-z、a-z、0-9的任何字符) str_替换(“,“,

可能重复:

我已经从一个excel文件将大约1000条记录导入MySQL。但现在我明白了� 在一些文本之间。好像是双引号

  • 导入数据时如何避免这种情况
  • 在网页中打印数据时,是否可以使用
    str_replace()
    函数来处理此问题

  • 使用preg_replace对所有无法识别的字符进行正则表达式替换

    例如:

    $data = preg_replace("/[^a-zA-Z0-9]/", "", $data);
    
    此示例将替换所有非字母数字字符(非a-z、a-z、0-9的任何字符)

    str_替换(“,“,$original_字符串)

    word使用了几个字符来执行此操作,因此您可能还需要: str_replace(“'”、“'”、$original_字符串)

    如果您看到导致相同问题的其他字符,您可以在word中打开文档,并将有问题的字符复制/粘贴到编辑器中,然后进行类似的替换


    由于您很可能希望使用等效版本替换字符,因此您可能不希望使用另一个答案中建议的正则表达式。str_replace比preg_replace在使用类型上更快。

    如果您的数据库足够简单(没有序列化值,大小也没有千兆字节),您可以完全导出它(例如,使用PhpMyAdmin),在文本编辑器中打开,执行搜索替换并将其导入回。

    1.检查编码格式您是否检查了页面、数据库、数据库连接等的编码?无论哪种方式,它都是重复的。可能是重复的,或者数据库排序规则是
    utf8\u general\u ci
    ,但我使用Navicat IDE导入了数据。因此我只能ld设置了此排序规则,仅此而已。您是如何导入该数据的。显示代码或命令行。无论未知字符是什么,都是。如果以前是双引号,他将丢失这些字符。这只是为了回答他关于使用“str_replace”的问题"。这将是一个更好的选择。墨菲定律确保客户会看到导致此问题的其他字符,而不是开发人员。规范化编码似乎是一个更好的方法。谁说开发人员不是客户?他可能也无法更改导入的excel文件的格式。我已经运行了在过去的类似问题中,文件/数据是由不愿意对其流程进行更改的其他人上传的。此外,他还特别询问了使用str_replace的问题。