UTF-8 mətnli sətirləri kəsərkən meydana çıxan xoşagəlməz simvollar

Yəqin bir çox veb saytlarda başlığın və ya mətnin ayrılmış sahəni doldurmasına görə … ilə məhdudlaşdırılıb davamını oxu düyməsi ilə keçid qoyulmasını görmüsünüz. Azərbaycandilli resursların əksərində belə qısaltmalar zamanı tez-tez bu tip problemlər görürük:

qonaqları qəbul etmi�… davamı

Yəqin ki tanış gəldi. Bu tip situasiyalarda PHP-də “sətirkəsən” funksiya olan substr bizim milli hərfləri başa düşmür və onları 1 baytlıq qaydada kəsməyə cəhd edir. Nəticə multibyte simvollar ortadan bölünür və anlaşılmaz simvollar meydana gəlir.
Bunun qarşısını almaqçün multibyte funksiyalardan istifadə etmək lazımdır. Məsələn

mb_internal_encoding("UTF-8"); 
echo mb_substr("Hər hansı Azərbaycan əlifbasında olan söz",0,15).'... <a>davamı</a>';

bu koddan istifadə etsək ilk 15 simvol normal şəkildə dərc ediləcək, sonrası isə 3 nöqtə ilə davam edəcək.

Yeni yazı olanda xəbər tutmaq üçün

* indicates required

2 Replies to “UTF-8 mətnli sətirləri kəsərkən meydana çıxan xoşagəlməz simvollar”

Bir cavab yazın

Sizin e-poçt ünvanınız dərc edilməyəcəkdir. Gərəkli sahələr * ilə işarələnmişdir