Php 将UTF-8字符直接解析到UTF-8数据库
只是一个简单的问题。。我在MySQL数据库和HTML文件中都使用UTF-8作为标准。。我不明白的一件事是,为什么字母在SQL中的显示方式与我键入字母时的显示方式不同。我确信当使用UTF-8时,它应该以与我编写它完全相同的方式放置Php 将UTF-8字符直接解析到UTF-8数据库,php,mysql,utf-8,Php,Mysql,Utf 8,只是一个简单的问题。。我在MySQL数据库和HTML文件中都使用UTF-8作为标准。。我不明白的一件事是,为什么字母在SQL中的显示方式与我键入字母时的显示方式不同。我确信当使用UTF-8时,它应该以与我编写它完全相同的方式放置 是否有一个类或其他东西可以自动将所有发布的数据保存在UTF-8中,然后按原样发布?文本编辑器也会对字符编码产生影响。请确保使用可以将字符编码设置为UTF-8的文本编辑器或IDE。尝试此1。方法如果不成功,则使用2.metod。最后一种方法是使用notepad2编辑器打开
是否有一个类或其他东西可以自动将所有发布的数据保存在UTF-8中,然后按原样发布?文本编辑器也会对字符编码产生影响。请确保使用可以将字符编码设置为UTF-8的文本编辑器或IDE。尝试此1。方法如果不成功,则使用2.metod。最后一种方法是使用notepad2编辑器打开HTML文件,将编码从文件菜单更改为UTF8并保存。我认为这将是一个解决方案
我的解决方案 如果有人遇到类似的问题,我的问题可以通过在PDO连接
、数组(PDO::MYSQL\u ATTR\u INIT\u COMMAND=>“SET NAMES'utf8'”之后添加这一行来解决
现在连接字符串如下所示:
$conn=newpdo('mysql:host=localhost;dbname=$dbname',$username,$password,数组(PDO::mysql\u ATTR\u INIT\u COMMAND=>“SET NAMES'utf8'”)代码>文本编辑器?如果你指的是Dreamweaver,我正在使用它。这里有一个关于Dreamweaver中字符编码的链接:。更多信息:嘿。。谢谢你的回答。。我需要的是在我的PDO连接之后添加这一行,数组(PDO::MYSQL\u ATTR\u INIT\u COMMAND=>“SET NAMES'utf8'”
)。以后一切都很顺利,请不要在问题中修改答案。如果您已经独立于下面的答案解决了问题,或者使用了多个不同的答案(主要不是某个答案),请写下您自己的答案并接受它。感谢您的答案和链接。这本书内容丰富,我从中学到了很多东西,但说真的,这本书的标题并没有描述我的任何问题,这显然不是我想要寻找的东西。。我怎么知道这就是答案?不过还是要谢谢你。。
$encodings = array("windows-1254","utf-8", "iso-8859-9" );
$data = file_get_contents($TempSrc);
$data=mb_convert_encoding($data, 'UTF-8', mb_detect_encoding($data, $encodings));