2009-07-10 7 views

答えて

3

あなたが操作したい文字列のエンコーディングを考慮する必要があります。上記の文字列を宣言したファイルと同じ文字エンコードでエンコードされていない場合は、両方のエンコード間で変換する必要があります。

最も一般的なエラーは、データまたはファイルがUTF-8とISO 8859-1でエンコードされていることです。あなたがこれを知っていれば

+1

私はこれが何かのようなものでしたが、私は心配したり、エンコーディングについて学ぶ時間がありました。 –

+1

$ line = str_replace( 'Ê'、 ''、mb_convert_encoding($ line、 "UTF-8")); –

0

はにpreg_replaceを使用してみてください:

$line = preg_replace('/Ê/ui', '', $line); 
2

は、それが明確ではないが、str_replaceは「場所に」動作しない、それは新しい文字列を返すので、おそらくすべてのあなたが本当に必要とは別の可能性は、あなたが探しているということです

$line=str_replace('Ê','',$line); 

ました実際には2つのUnicodeの文字であるEおよび接尾辞の区別記号を使用します。

+0

これは私のコードのように見えますが、実際には、私はそこに$ラインを残しておかなければなりません。 –

0

私はそれは、マルチバイト文字だと思うので、私は最初にUTF-8にラインを変換する必要がありましたmb functions

0

を試してみてください。

mb_convert_encoding($line, "UTF-8") 

だから私はなってしまったコードは次のとおりです。

$line = str_replace('Ê','', mb_convert_encoding($line, "UTF-8")); 

はちょうど代わりのコメントに「解決策」を得るために、私自身の質問に答えました。グンボーに感謝します。

関連する問題