0

我正在执行以下语句。

$mystring = <<<EOT
UPDATE sites_niche SET `short_review` = REPLACE(`short_review`, '’',"'");
EOT;

但是,它不起作用,因为如果我将它放在我的 phpmyadmin 中它会起作用。’罪魁祸首是这个角色根本没有被替换的坏角色。

我试图将更新语句打印到屏幕上,我得到了这个:

UPDATE sites_niche SET `short_review` = REPLACE(`short_review`, '’',"'");

我认为字符串一进入数据库就会出现乱码。我的问题是如何对这些字符集进行编码,’以便它们一进入数据库就不会出现乱码。

4

2 回答 2

1

我可以在您的帖子中看到两个问题。

如果您不知道您的编码格式是什么,您可以使用 php mb_detect() 函数来检查字符编码格式并使用识别的格式进行以下解决方案

  1. 从 php 更新到 mysql

解决方案: - 负责连接到 Mysql 的 php 代码应该使用

mysql_set_charset ( string $charset [, resource $link_identifier = NULL ] ) 

2.打印时出现乱码

解决方案: - 您必须在页面 doctype 声明中设置字符编码,否则您会看到这个乱码

于 2012-09-12T07:53:04.353 回答
-1

您可以使用 iconv 扩展http://es.php.net/manual/en/function.iconv.php或 mbstring http://es.php.net/manual/en/function.mb-convert-encoding.php将字符串从一个字符集转换为另一个字符集

于 2012-09-12T07:38:28.197 回答