’
のような非標準文字を'
のような標準文字に変更する必要があります。 PHPでどうすればいいですか?今はアポストロフィを変更するだけですが、二重引用符などのように他の人を変更する方法を知っているといいでしょう。非標準文字を標準バージョンに変換する
答えて
あなたはstr_replace()
を使用することができます。
$replace = array('’' => '\''); //You can add more characters here
echo str_replace(array_keys($replace), array_values($replace), 'can’t');
しかし、’
と'
は、二つの異なる文字であり、あなたは同じとして扱うしたい私はなぜだろう。
+1。 – deceze
これは、私のニーズに最適な答えに終わった。 – LordZardeck
あなただけのASCII出力をしたい場合は、あなたがiconv()
を使用して翻字することができます
iconv("UTF-8", "ASCII//TRANSLIT", "Hello’ World"); // gives "Hello' World"
それはUTF-8でない場合は、あなたの正しいソースのエンコーディングに置き換えてください。
OPが望んでいるとすれば、これが最適な解決策です。 +1 – deceze
ソースエンコーディングはどのようにして決定できますか? – LordZardeck
@LordZardeck:あなたはそれを知る必要があります。あなたのソース文字列がどこから来たのかという情報に結びついています。疑問がある場合は、上司またはプロジェクトのマニュアルを参照してください... –
「非標準」文字はありません。なぜあなたはそれをしたいのですか? – SLaks
まず、必要な文字エンコーディング(UTF-8、ISO-8859-1など)を決定してから、クライアントに提供する必要がある文字を決定する必要があります。 –
@ Jaredこれは一度は* encoding *の問題ではありません。 :) – deceze