2010-12-12 13 views
0

文字列からこの記号を削除する方法がわかりません。PHP:テキスト内に 記号を取り除くには?

文字列はutf-8形式です。

どうすればよいですか?使用

: ヘッダ( "のContent-Type:text/htmlの;のcharset = UTF)を

更新;

preg_replace('/\W/','',utf8_decode(substr(utf8_encode($ad['description']),0,125))) 

ありがとう::(

これは、文字列全体を削除します-8 ');

すぐにexit()を使用して置換後。

+0

広告['description']文字列の元は何ですか?また、どの文字セットでエンコードされていますか? – mmccomb

+0

正規表現をUnicode文字列に適用する場合は、 '/ u'修飾子を使用してください。 –

答えて

3

U + FFFD代替文字が使用されているときにテキストを適切なフォーマットでエンコードされていることであることを確認してください検索してみてください文字が現在の文字セットのエンコーディングで表現されていない場合エンコードをUTF-8として適切に宣言し、UTF-8文字列を使用すると、ほとんどのプラットフォームでは表示されません。

0

あなたはutf8_decode( 'string')を試すことができます。またはutf8_encode( 'string');

が、あなたは本当にactuall問題はヘッダが正しいセット、ドキュメントタイプ、保存されたりするものではない

1

ここでの問題は、文字列がではなく、がutf-8形式であることです。あなたはそれがふりをしてそれに応じてデータを扱いますが、文字列にはおそらくAnsi文字が含まれています。 Content-Encoding = utf-8ヘッダーを渡すだけでなく、送信する前に内容をutf-8に変換する必要があります。