1

トルコ語の文字を表示するのに問題があります。htmlの背景にひし形が付いた小さな疑問符として表示されています。

iconvを使用してこれを修正するにはどうすればよいですか?それが最善の選択肢だと思うので?現在、私のページはutf-8でエンコードされています。

私は次のようなキャラクターをサポートする必要があります

ıñş

また、それらを私のデータベースに挿入することもできます。

ありがとう

4

3 に答える 3

8

最初にutf8でencode-decodeを試みて失敗し、ファイル形式をASCIIからUTF-8に変更し、再度utfでencodeを試み、何度かファイル形式を変更して失敗しました。

それから私は「iconv」を見つけ、試して失敗しました。「setlocale」でロケールを変更。トルコ語、英語、その他のタイプを試しましたが、失敗しました。

ついに私はこの関数を書きました、そして私は出力に満足しています:)

function transliterateTurkishChars($inputText) {
    $search  = array('ç', 'Ç', 'ğ', 'Ğ', 'ı', 'İ', 'ö', 'Ö', 'ş', 'Ş', 'ü', 'Ü');
    $replace = array('c', 'C', 'g', 'G', 'i', 'I', 'o', 'O', 's', 'S', 'u', 'U');
    $outputText=str_replace($search, $replace, $inputText);
    return $outputText;
}
$goodText=transliterateTurkishChars($badText);
于 2012-03-18T12:19:56.637 に答える
7

を使用して解決しました

iconv("ISO-8859-1", "UTF-8", $text);
于 2011-02-25T21:38:36.460 に答える
0

$text に "Çınar" のようなトルコ語の文字が含まれている場合、一般的にはそうですが、環境がトルコ語ロケールで動作するように設定されていない限り、翻訳は失敗します。

以下のようにphp内でロケールを設定する必要がある場合。

setlocale(LC_ALL, 'tr_TR');
于 2012-03-01T12:02:31.417 に答える