0

PHP の � のような奇妙な文字列を消すにはどうすればよいですか?

私はすでに html_entity_decode php 関数のようなものを使用していますが、まだ機能しません。

4

4 に答える 4

4

これらの行を db 構成ファイルに追加してみてください。

$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_set_charset('utf8',$con);
mysql_select_db("db_name", $con);


<meta http-equiv="Content-Type" content="text/html; charset=utf8" />
于 2012-07-17T06:14:41.130 に答える
1

� は単なる 1 つの記号ではありません。ブラウザーが認識できない記号を置き換えるために使用される記号です。通常、これはエンコーディングの問題が原因です。間違ったエンコーディングを設定したか、誰かが別のエンコーディングのシンボルを使用しています。

それはただの 1 文字ではないので、魔法のように取り除くことはできません。簡単に言えば、エンコーディングは魔法の杖を振ることができない場所の 1 つです。エンコーディングを決定してから、それを適用する必要があります。

ユーザーからの入力を受け付けている場合、正直なところ、この問題を解決する方法がわかりません。一般的な原因 (ハイフンとは異なり、カーリー クォートとダッシュは、私がこれに最も遭遇する場所です) を確認し、手動でそれらを強制的に置き換えることができますが、ユーザーが正しくエンコードされていない文字を入力したい場合は、できることがたくさん。

于 2012-07-17T04:09:12.953 に答える
0

コンテンツがANSIエンコーディングの場合は、

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

(NOTEPAD ++)のようなエディタを使用してファイルのエンコーディングを確認できます

于 2012-07-17T04:38:19.363 に答える
0

<meta charsetあなたを iso-8859-1 のように変更してみてください

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
于 2012-07-17T04:12:32.387 に答える