【发布时间】:2011-10-21 06:51:40
【问题描述】:
我正在使用 PHP 读取一个 UTF-8 编码的文件,并将内容直接发送到数据库中。问题是当我遇到诸如 ” 之类的字符时,它会将以下 †放入数据库中。
如何正确编码,我正在读取一个 UTF-8 文件,而我的数据库列的排序规则是 UTF-8。我究竟做错了什么?我缺少一个不错的功能吗?欢迎任何帮助。
这是我的桌子:
CREATE TABLE tblProductData (
intProductDataId int(10) unsigned NOT NULL AUTO_INCREMENT,
strProductName varchar(50) NOT NULL,
strProductDesc varchar(255) NOT NULL,
strProductCode varchar(10) NOT NULL,
dtmAdded datetime DEFAULT NULL,
dtmDiscontinued datetime DEFAULT NULL,
stmTimestamp timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (intProductDataId),
UNIQUE KEY (strProductCode)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_unicode_ci;
编辑:
我正在读这样的日期:
$hFile = @fopen($FileName, "r") or exit("\nUnable to open file: " . $FileName);
if($hFile)
{
while(!feof($hFile))
{
$Line = fgets($hFile);
$this->Products[] = new Product($Line);
}
fclose($hFile);
}
【问题讨论】:
-
喜欢这个 -> “吐出内容”
-
您能说明您是如何读取文件并将其插入数据库的吗?
标签: php database file encoding utf-8