Navigate / search

Php İlk Harfleri Büyük Yapmak UTF-8

Phpde paragraftaki ya da cümledeki ilk harfleri büyük olarak çevirmek oldukça basittir. Bu harfleri büyütme esnasında yaşadığımız sıkıntılardan biri Türkçe karakter problemidir.

İlk harfleri büyütmek için kullandığımız iki fonksiyon vardır. Biri ucfirst() diğeri ise ucwords(). PHP ucfirst fonksiyonu verdiğimiz metin içerisindeki ilk harfi büyütür, ucwords ise metinteki tüm kelimelerin ilk harflerini büyütür. Konuyla ilgili bilgi almak için daha önceki yazımı okuyabilirsiniz.

Php’de Büyük & Küçük Harfe Çevirme- strtoupper,strtolower,ucfirst,ucwords

Şu yazımda da UTF-8 olarak yani Multibyte karakterlerdeki Türkçe probleminden bahsetmiştim.

Php ile Büyük & Küçük Harf Çevirme Türkçe Problemi

Şimdi ilk karakterleri büyütürken Türkçe karakter problemi yaşamamak için kullandığım fonksiyonu sizinle paylaşacağım.

Örneğimize ucfirst fonkiyonu ile başlayalım.

1
2
3
4
5
6
7
function ucfirst_tr($metin)
{
    $k_uzunluk = mb_strlen($metin, "UTF-8");
    $ilkKarakter= mb_substr($metin, 0, 1, "UTF-8");
    $kalan = mb_substr($metin, 1, $k_uzunluk - 1, "UTF-8");
    return mb_strtoupper($ilkKarakter, "UTF-8") . mb_strtolower($kalan,"UTF-8");
}

Kullanımı;

1
2
$yazi = "şaFAK";
echo ucfirst_tr($yazi);

Sonuç:

Şafak

Peki ya Php ile Her Kelimenin İlk Harfini Büyük Yapmak İstiyorsak!

Bunun için oldukça yararlı bir fonkiyonumuz mevcut. mb_convert_case fonskiyonu.
Cümlemizdeki tüm kelimelerin ilk harflerini büyük yapmamızı sağlayacak.

Bu fonksiyonu kullanırken mp_strtolower fonksiyonuyla beraber kullanmamız gerekicek. Sebebi de ilk harflerin dışındaki harfleri küçük yapmak istememiz.

Kullanımı;

1
2
$metin = "bU cüMlemizin her KELİMESİNİN ilK hARFİ büYük olacaK.";
echo mb_convert_case(mb_strtolower($metin), MB_CASE_TITLE, "UTF-8");

Sonuç;

Bu Cümlemizin Her Kelimesinin İlk Harfi Büyük Olacak.