0

私は現在、アポストロフィ、著作権、予約記号などのテキストの一部がプレーン テキストであるデータベース タイプの Web サイトに取り組んでいます。

データベースは 2000 以上のエントリで構成されています。©エンコードされていないプレーン テキストの記号と文字をエンコードされた Ex:タイプの文字に置き換えて、Web サイトでテキストが正しく表示されるようにするための迅速かつ安全な方法を考え出そうとしています。

私は次のようなことを考えていました:

while($row = mysql_fetch_array($results)){
  if (strstr($row['description'], '©'){ 
       //replace with ©
  }
  if(strstr($row['description'], '\''){
            //replace with '
  }
   ....etc...
  //once correct string is created, use mySQL to 
  // update $row['description'] for this row...
 }

この方法が私の問題を解決するのに役立つかどうか疑問に思っていましたか? 誰かがこれを達成するための安全な方法で私を導くのを助けることができれば?

4

3 に答える 3

3

( htmlentities) メソッドは、それを行う適切な方法です。

htmlentitiesについては PHP マニュアルを参照してください。

于 2012-11-03T16:20:10.823 に答える
2

you can use htmlentities() but don't forget to use html_entity_decode() while echoing back your text..

于 2012-11-03T16:24:21.087 に答える
0

同様の問題を抱えている人には、これが私の問題の解決策であることがわかりました。

私のコンテンツタイプは、以下のものではなくUTF-8に設定されていました:

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

上記のコードを html head タグに追加すると、レンダリングの問題が自動的に修正されました。

于 2012-11-03T16:43:30.230 に答える