Navigate / search

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

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

Yeni fonksiyonlarımız : mb_strtolower() , mb_strtoupper()

Php ile harfleri küçük harftan büyük harfe,büyük harften küçük hafta çevirmek ya da sadece ilk harfleri büyütmek oldukça basittir. Bir kaç Php fonksiyonu ile bunları gerçekleştirebilirsiniz. Bu fonksiyonları anlattığım yazıma bakabilirsiniz.

Php’de Büyük & Küçük Harfe Çevirme

Bu fonksiyonların kullanımı sırasında Türkçe karakter problemleri yaşıyoruz. Bu konuyla ilgili bir kaç geri dönüşün ardından bu problemlere çözüm getirecek UTF-8 ile harfleri değiştirebileceğiniz fonksiyonları sizinle paylaşacağım.

Öncelikle strtolower fonskiyonundan başlayalım. Daha önceki derste anlatmış olduğum gibi bu fonkisyonumuz harfleri küçük harfe çevirmeyi sağlıyor. strtolower fonskiyonu yerine mb_strtolower fonskiyonunu kullanacağız ve karakter setimizi UTF-8 olarak belirteceğiz. Bu sayede harfleri küçültüp büyültürken türkçe karakterlerde sorun yaşamayacağız. Şimdi konuyla alakalı fonksiyonların kullanımı görelim.

1
2
3
4
5
// STRTOLOWER (harf küçültme)
strtolower($metin);
 
// STRTOUPPER (harf küçültme)
strtoupper($metin);

yerine;

1
2
3
4
5
// STRTOLOWER (harf küçültme)
mb_strtolower($metin,"utf-8"); // encoding olarak kullanımı
 
// STRTOUPPER (harf küçültme)
mb_strtoupper($metin,"utf-8"); // encoding olarak kullanımı

Fonksiyonlarını kullanarak Türkçe karakter probleminden kurtulmuş olacağız.

mb_strtolower ve mb_strtoupper fonksiyonularını kullanırken karakter setimizi UTF-8 olarak belirlediğimiz için Türkçe karakter problemi yaşamayacağız ;) Aynı şekilde karakter set sorununu substr fonksiyonu ile de yaşayabilirsiniz. Konuyla ilgili şu yazımı okuyabilirsiniz.

Php Substr Türkçe Karakter Problemi

Bunları öğrendiğimize göre kullanabileceğiniz çok profesyonel olmayan ama heryerde işinizi görebilecek bir kaç fonskiyonu sizinle paylaşacağım.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
function tr_strtolower($metin) {
    return mb_strtolower($metin, 'utf-8');
}
 
function tr_strtoupper($metin) {
    return mb_strtoupper($metin, 'utf-8');
}
 
function tr_ucfirst($metin) {
	$ilk = mb_substr($metin,0,1, 'utf-8');
	$kalan = mb_substr($metin,1,strlen($metin), 'utf-8');
        return tr_strtoupper($ilk).tr_strtolower($kalan);
}

Kendi oluşturduğumuz fonksiyonları kendi projemizde karakter set belirtmeden kullanabiliriz.

1
2
3
tr_strtolower($metin);
tr_strtoupper($metin);
tr_ucfirst($metin);