我在编码某个文件时遇到了麻烦。在我的 php 程序中,我得到一个 txt 文件。使用 foreach 并从此文件中获取每一行并做一个表,接下来我尝试将这些数据放入我的数据库中,插入后我在数据库中没有波兰字母。我的数据库、表和所有字段都有一个 utf8_unicode_ci ,当我使用 phpmyadmin 进行插入时,所有字母都是正常的。我尝试使用 detect_encoding($row),它检测 ASCII 解码。如何将波兰字母插入我的数据库?请帮忙。
我的数据库连接:
try{
$dbh = new PDO('mysql:dbname=google;host=localhost;','root','');
$dbh->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
$dbh -> query ('SET NAMES utf8');
$dbh -> query ('SET CHARACTER_SET utf8_unicode_ci');}
我试试
$url = mb_convert_encoding($url,'UTF-8',mb_detect_encoding($url));
和
$url = Encoding::toUTF8($url);
和 ofc iconv 还有其他想法吗?
在我的插入中一切正常,这是一个例子:
PDOStatement Object ( [queryString] => insert into `site` values ("","meblegdańsk.pl","1") )