1

重複の可能性:
UTF-8全体

カフェという言葉のあるウェブからcurlでデータをスクレイピングしています。エコーすると問題ないように見えますが、mysqlデータベースに挿入すると、Café
の処理方法になります。

4

2 に答える 2

2

PHP: 内部エンコーディング、ファイル エンコーディング

ランタイム構成:

mb_internal_encoding("UTF-8");

そして、テキスト エディターでファイル エンコーディングを BOM なしの UTF8 に設定します (たとえば、Notepad++: Encoding メニューで、BOM なしの UTF8 に変換します)。

MySQL: テーブル、列のエンコード/照合

エディター/デザイナー (PhpMyAdmin) で、すべてのエンコーディングと照合順序を UTF8 に設定します。

それらの間:接続エンコーディング/照合

mysqli で使用しているドライバーはわかりません (および mysql では使用しないでください)。

"SET CHARACTER SET 'utf8'"
'SET NAMES utf8'

PDO には、このための独自の構成があります。php.net を参照してください。

レスポンスのエンコーディング

ヘッダー呼び出しで設定します:

header('Content-Type: text/html; charset=utf-8');

于 2012-10-25T08:00:13.127 に答える
1

確認する必要があることがいくつかあります。最初に、使用しているテーブルのエンコーディングが必要な特殊文字をサポートできることを確認してください。のようなものを使用しますutf-unicode-ci。これらについて少し読んでみることをお勧めします。

いくつかの utf8 文字エンコーディングがあり、さまざまな言語での検索用に最適化されているため、その名前が付けられています。Unicode 文字セットの詳細については、こちらをお読みください

また、接続がphpで使用している文字エンコーディングを認識していることを確認する必要があります.

于 2012-10-25T08:00:10.937 に答える