2009-04-07 18 views
7

Veritabanında saklanan bazı kesir bilgileri var, ör. 12 ½Kesirleri html varlıklarına dönüştürme

Aramanın yapılması ve değiştirilmesi kısa bir süre önce, bunları otomatik olarak uygun html öğelerine dönüştürecek olan PHP işlevleri var mı?

cevap

2

htmlentities() function'u kullanabilirsiniz. Bu, tüm özel karakterleri HTML eşdeğeriyle değiştirir. Gereksinim duyduğunuz işi yapmalı.

İyi soru btw, +1.

0

deneyin htmlentities()

2

htmlentities.

Ama muhtemelen buna gerek yok. Sayfanızı, bunları içeren bir kodlamada (UTF-8, ISO-8859-1) sunun ve bunları, sözel olmayan, karaktersiz karakterler olarak ekleyebilirsiniz.

+0

gerçekten? Bu sadece kesirler için geçerli mi? – Tom

+1

Utf-8 hemen hemen tüm karakterleri dönüşüm olmadan kullanmanıza izin verecektir. Yine de güvenlik için htmlentities çağırmalısınız. http://akrabat.com/2009/03/18/utf8-php-and-mysql/ ayrıntılar UTF-8'i kullanma adımlarını açıklar - php, mysql ve html'de değişiklik yapmanız gerekir. –

+0

Kullandığınız kodlamaya sığabilecek her şey için geçerlidir. Eğer ISO-8859-1 (Batı Avrupalı) iseniz, ¼½¾ (U + 00BC-U + 00BE) içeren U + 00FF'ye varacaksınız. UTF-8 kullanıyorsanız, tüm Unicode karakter gamını içerir. Yine de ‘<’/‘&’ ile ilgilenmek için htmlspecialchars'a ihtiyacınız var. – bobince

1

Yanıt zaten verilmiş: htmlentities() kullanın. Buna ek olarak, UTF-8'in kullanılması önerilmiştir, ki bu elbette gerçekten iyi bir fikirdir. UTF-8 dizeleri üzerinde htmlentities() kullanarak planlıyorsanız Ancak, şu kodu kullanın (veya esrarlı karakterleri kodlanmış alırsınız):

htmlentities($str, ENT_COMPAT, 'UTF-8') 

Tahmin edebileceğiniz gibi, bu ikinci eklemek zorunda berbat ve üçüncü argüman her zaman. Çoğu proje için htmlentities()'a ihtiyacım var, bir kısayol işlevini yazmayı bitiriyorum, yani:

İlgili konular