Ben İngilizce ve Arapça kitap başlıkları ile bir MySQL veritabanı var ve ben bir PHP class otomatik olarak Latin alfabesine içine Arapça metin çevirisini ki kullanıyorum.
Benim çıkış HTML böyle bir şey bakmak istiyorum:
<h3>A book</h3>
<h3>كتاب <em>(kitaab)</em></h3>
<h3>Another book</h3>
Içinde kullanılan Unicode karakter ve glyphs dayalı bir dize dilini belirlemek için PHP için bir yolu var mı? Ben böyle bir şey almaya çalışıyorum:
$Ar = new Arabic('EnTransliteration');
while ($item = mysql_fetch_array($results)) {
...
if (some test to see if $item['item_title'] has Arabic glyphs in it) {
echo "<h3>$item[item_title] <em>(" . $Ar->ar2en($item['item_title']) . ")</em></h3>";
} else {
echo "<h3>$item[item_title]</h3>";
}
...
}
Latin karakterleri beslenen, yani teoride ben dönüşüm yoluyla her sonuç göndermek olabilir, ama bu işleme bir atık gibi görünüyor Neyse ki sınıf kısmak değildir.
Teşekkürler!
Edit: I still haven't found a way to check for glyphs or characters. I suppose I could put all the Arabic characters in an array and check if anything in the array matches a part of the string...
Ben, ancak, sonunda ince işe yarayabilecek bir ara çözüm anlamaya etmedi. Bu dili ne olursa olsun dönüşüm yoluyla, her başlık koyar, ama dize değiştirildi yalnızca parantez çevirisini verir:
while ($item = mysql_fetch_array($mysql_results)) {
$transliterate = trim(strtolower($Ar->ar2en($item['item_title'])));
$item_title = (strtolower($item['item_title']) == $transliterate) ? $item['item_title'] : $item['item_title'] . " <em>($transliterate)</em>";
echo "<h3>$item_title</h3>";
}