草庐IT

php - 如何在 mysql 或 php 中将 'u00e9' 转换为 utf8 字符?

我正在对一些正在导入mysql的杂乱数据进行数据清理。数据包含“伪”unicode字符,这些字符实际上以“u00e9”等形式嵌入到字符串中。所以一个字段可能是..'Jalostotitlu00e1n'我需要撕掉那个笨拙的'u00e1n'并用相应的utf字符替换它我可以在任一mysql中执行此操作,可能使用子字符串和CHR,但我通过PHP预处理数据,所以我也可以在那里执行。我已经知道如何配置mysql和php来处理utf数据。问题实际上只是在我正在导入的源数据中。谢谢 最佳答案 /*将utf8html转换为ansi的函数php*/pu

php - 如何在 mysql 或 php 中将 'u00e9' 转换为 utf8 字符?

我正在对一些正在导入mysql的杂乱数据进行数据清理。数据包含“伪”unicode字符,这些字符实际上以“u00e9”等形式嵌入到字符串中。所以一个字段可能是..'Jalostotitlu00e1n'我需要撕掉那个笨拙的'u00e1n'并用相应的utf字符替换它我可以在任一mysql中执行此操作,可能使用子字符串和CHR,但我通过PHP预处理数据,所以我也可以在那里执行。我已经知道如何配置mysql和php来处理utf数据。问题实际上只是在我正在导入的源数据中。谢谢 最佳答案 /*将utf8html转换为ansi的函数php*/pu

php - 如何更正 MySQL utf8_general_ci 字段中的双编码 UTF-8 字符串?

我必须重新设计一个类,其中(除其他外)UTF-8字符串被错误地双重编码:$string=iconv('ISO-8859-1','UTF-8',$string);:$string=utf8_encode($string);这些错误字符串已保存到MySQL数据库中的多个表字段中。所有受影响的字段都使用排序规则utf8_general_ci。通常我会设置一个小的PHP补丁脚本,循环遍历受影响的表,选择记录,通过在双编码字段上使用utf8_decode()更正错误记录并更新它们。由于这次我有很多巨大的table,而且错误只影响德语变音符号(äöüßÄÖÜ),我想知道是否有比这更智能/更快的解决

php - 如何更正 MySQL utf8_general_ci 字段中的双编码 UTF-8 字符串?

我必须重新设计一个类,其中(除其他外)UTF-8字符串被错误地双重编码:$string=iconv('ISO-8859-1','UTF-8',$string);:$string=utf8_encode($string);这些错误字符串已保存到MySQL数据库中的多个表字段中。所有受影响的字段都使用排序规则utf8_general_ci。通常我会设置一个小的PHP补丁脚本,循环遍历受影响的表,选择记录,通过在双编码字段上使用utf8_decode()更正错误记录并更新它们。由于这次我有很多巨大的table,而且错误只影响德语变音符号(äöüßÄÖÜ),我想知道是否有比这更智能/更快的解决

mysql - 将 mysql 表从 latin1 转换为 utf8

我正在尝试将一些mysql表从latin1转换为utf8。我正在使用以下命令,这似乎主要工作。ALTERTABLEtablenameCONVERTTOCHARACTERSETutf8COLLATEutf8_general_ci;但是,在一个表上,我收到有关重复键条目的错误。这是由“名称”字段上的唯一索引引起的。似乎在转换为utf8时,任何“特殊”字符都被索引为它们的直接英文等价物。例如,已经有一条名称字段值为“Dru”的记录。转换为utf8时,带有“Drü”的记录被视为重复。“Patrick”和“Påtrìçk”也是如此。这是重现问题的方法:CREATETABLE`example`(`

mysql - 将 mysql 表从 latin1 转换为 utf8

我正在尝试将一些mysql表从latin1转换为utf8。我正在使用以下命令,这似乎主要工作。ALTERTABLEtablenameCONVERTTOCHARACTERSETutf8COLLATEutf8_general_ci;但是,在一个表上,我收到有关重复键条目的错误。这是由“名称”字段上的唯一索引引起的。似乎在转换为utf8时,任何“特殊”字符都被索引为它们的直接英文等价物。例如,已经有一条名称字段值为“Dru”的记录。转换为utf8时,带有“Drü”的记录被视为重复。“Patrick”和“Påtrìçk”也是如此。这是重现问题的方法:CREATETABLE`example`(`

MySQL区分e和é(e尖锐)——UNIQUE索引

我有一个表students,有3列:id、name和age。我在列name和age上有一个UNIQUE索引Index_2。CREATETABLE`bedrock`.`students`(`id`INTEGERUNSIGNEDNOTNULLAUTO_INCREMENT,`name`VARCHAR(45)NOTNULL,`age`INTEGERUNSIGNEDNOTNULL,PRIMARYKEY(`id`),UNIQUEINDEX`Index_2`USINGBTREE(`name`,`age`))ENGINE=InnoDB;我尝试了这个插入选项:insertintostudents(id,

MySQL区分e和é(e尖锐)——UNIQUE索引

我有一个表students,有3列:id、name和age。我在列name和age上有一个UNIQUE索引Index_2。CREATETABLE`bedrock`.`students`(`id`INTEGERUNSIGNEDNOTNULLAUTO_INCREMENT,`name`VARCHAR(45)NOTNULL,`age`INTEGERUNSIGNEDNOTNULL,PRIMARYKEY(`id`),UNIQUEINDEX`Index_2`USINGBTREE(`name`,`age`))ENGINE=InnoDB;我尝试了这个插入选项:insertintostudents(id,

mysql - utf-8 与 latin1

使用utf8作为字符集与使用latin1相比有哪些优点/缺点?如果utf可以支持更多字符并且始终如一地使用,它不是总是更好的选择吗?有什么理由选择latin1吗? 最佳答案 UTF8的优点:支持大多数语言,包括希伯来语等RTL语言。将数据导入/导出到支持UTF8的组件(JavaScript、Java等)时​​无需翻译。UTF8缺点:非ASCII字符将花费更多时间进行编码和解码,因为它们的编码方案更复杂。非ASCII字符将占用更多空间,因为它们可能使用超过1个字节存储(不在ASCII字符集中的前127个字符中的字符)。CHAR(10)

mysql - utf-8 与 latin1

使用utf8作为字符集与使用latin1相比有哪些优点/缺点?如果utf可以支持更多字符并且始终如一地使用,它不是总是更好的选择吗?有什么理由选择latin1吗? 最佳答案 UTF8的优点:支持大多数语言,包括希伯来语等RTL语言。将数据导入/导出到支持UTF8的组件(JavaScript、Java等)时​​无需翻译。UTF8缺点:非ASCII字符将花费更多时间进行编码和解码,因为它们的编码方案更复杂。非ASCII字符将占用更多空间,因为它们可能使用超过1个字节存储(不在ASCII字符集中的前127个字符中的字符)。CHAR(10)