ord()
fonksiyonuyla daha önce karşılaşmış olabilirsiniz. Bu basit ama güçlü fonksiyon birçok farklı senaryoda inanılmaz derecede faydalı olabilir. Bu yazıda ord()
fonksiyonunun ne yaptığını, nasıl çalıştığını ve kendi PHP kodunuzda nasıl kullanabileceğinizi daha yakından inceleyeceğiz. Ayrıca fonksiyonun bazı yaygın kullanım durumlarını inceleyecek ve diğer benzer fonksiyonlarla karşılaştıracağız.
ord() fonksiyonu ne işe yarar?
PHP’deki ord()
işlevi bir karakterin ASCII değerini döndürmek için kullanılır. “ASCII” terimi, İngiliz alfabesindeki her karakterin yanı sıra birçok özel karakter ve sembole benzersiz bir sayısal değer atayan ve yaygın olarak kullanılan bir kodlama sistemi olan American Standard Code for Information Interchange’in kısaltmasıdır. ord()
fonksiyonunu kullanarak, bir dize içindeki herhangi bir karakterin ASCII değerini alabilir ve üzerinde çeşitli işlemler gerçekleştirebilirsiniz.
İşlev nasıl çalışır ve sözdizimi nedir?
ord()
fonksiyonunun söz dizimi oldukça basittir. Hemen bir örneğe bakalım:
$ascii_degeri = ord($karakter);
Bu kodda $karakter
değişkeni, ASCII değerini bulmak istediğimiz karakteri temsil eder. ord()
fonksiyonu bu karakteri bir argüman olarak alır ve $ascii_degeri
değişkenine atanan ASCII değerini döndürür. Dönen değer bir tamsayıdır.
ord()
fonksiyonunun yalnızca tek karakterlerle çalıştığını unutmamak önemlidir. Fonksiyona birden fazla karakter içeren bir dize iletirseniz, sadece dizedeki ilk karakterin ASCII değerini döndürecektir.
Örneklerle fonksiyonun kullanımı
Örnek 1: Küçük harfin ASCII değerini bulun
Küçük “a” harfinin ASCII değerini bulmak istediğimizi varsayalım. ord()
fonksiyonunu şu şekilde kullanabiliriz:
$karakter = 'a';
$ascii_degeri = ord($karakter);
echo $ascii_degeri; // Çıktı: 97
Bu kodda, önce “a” karakterini $karakter
değişkenine atıyoruz. Daha sonra bu değişkeni ord()
fonksiyonuna aktarıyoruz ve bu fonksiyon “a” karakterinin ASCII değerini (97) döndürüyor. Son olarak, $ascii_degeri
değerini ekrana yazdırmak için echo deyimini kullanıyoruz.
Örnek 2: Büyük harfin ASCII değerini bulun
Büyük bir harfin ASCII değerini bulmak için ord()
fonksiyonunu da kullanabiliriz:
$karakter = 'G';
$ascii_degeri = ord($karakter );
echo $ascii_degeri ; // Çıktı: 71
Bu kodda, “G” karakterini $karakter
değişkenine atıyoruz, ardından ASCII değerini (71’dir) almak için ord()
fonksiyonuna aktarıyoruz. Son olarak, $ascii_degeri
değerini yazdırmak için echo kullanıyoruz.
Örnek 3: Özel bir karakterin ASCII değerini bulun
ord()
fonksiyonu, noktalama işaretleri gibi özel karakterlerin ASCII değerini bulmak için de kullanılabilir:
$karakter = '@';
$ascii_degeri = ord($karakter );
echo $ascii_degeri ; // Çıktı: 64
Bu kodda, “@” sembolünü $karakter
değişkenine atıyoruz, ardından ASCII değerini (64’tür) bulmak için ord()
işlevini kullanıyoruz.
Örnek 4: Bir dizeyi ASCII değerlerinden oluşan bir diziye dönüştürme
Bir dizenin tamamını karşılık gelen ASCII değerlerinden oluşan bir diziye dönüştürmek istiyorsak, str_split()
fonksiyonunu ord()
fonksiyonuyla birlikte kullanabiliriz:
$string = 'Merhaba Dünya!';
$ascii_array = array_map('ord', str_split($string));
print_r($ascii_array); // Çıktı: Array ( [0] => 77 [1] => 101 [2] => 114 [3] => 104 [4] => 97 [5] => 98 [6] => 97 [7] => 32 [8] => 68 [9] => 252 [10] => 110 [11] => 121
İlk olarak $string
değişkenine “Merhaba Dünya!” dizesini atıyoruz. Daha sonra dizeyi tek karakterlerden oluşan bir diziye bölmek için str_split()
fonksiyonunu kullanıyoruz. Bu diziyi array_map()
fonksiyonuna ve dizideki her karakteri karşılık gelen ASCII değerine dönüştürmek için ord()
fonksiyonuna aktarıyoruz. Son olarak, elde edilen diziyi ekrana yazdırmak için print_r()
fonksiyonunu kullanırız.
Örnek 5: Bir ASCII değerini karşılık gelen karaktere dönüştürme
Bir ASCII değerini karşılık gelen karaktere dönüştürmek için chr()
fonksiyonunu da kullanabiliriz:
$ascii_degeri = 66;
$karakter = chr($ascii_degeri );
echo $karakter ; // Çıktı: B
Uygulama açısından bu işlev için yaygın kullanım durumları nelerdir?
ord()
işlevi genellikle bir dizedeki tek tek karakterler üzerinde işlem yapmanız gereken durumlarda kullanılır:
- Kullanıcı girdisini doğrulama: Kullanıcı girdisinin yalnızca alfanümerik karakterler, boşluklar veya noktalama işaretleri gibi geçerli karakterler içerdiğinden emin olmak için
ord()
işlevini kullanabilirsiniz. - Şifreleme ve şifre çözme: Bazı şifreleme algoritmaları, şifreleme veya şifre çözme işlemlerini gerçekleştirmek için karakterlerin ASCII değerlerine dayanır.
- Metin işleme:
ord()
işlevi, metin verilerini analiz etmek ve bunlardan kelime sıklığı veya duygu analizi gibi bilgileri çıkarmak için kullanılabilir. - Karakter kodlaması: Metin verilerini farklı karakter kodlama sistemleri arasında dönüştürmeniz gerekiyorsa, bir kodlama sistemindeki karakterlerin ASCII değerlerini çıkarmak için
ord()
işlevini kullanmanız ve ardından bunları istenen kodlama sistemine dönüştürmek için ilgilichr()
işlevini kullanmanız gerekebilir.
Benzer fonksiyonlar
Diğer programlama dillerinde ord()
fonksiyonuna benzer birkaç fonksiyon bulunur, örneğin:
- Python’da ascii() fonksiyonu: Bu fonksiyon PHP’deki
ord()
fonksiyonuna benzer, çünkü bu da bir karakterin ASCII değerini döndürür. - JavaScript’te charCodeAt() yöntemi: Bu yöntem de aynı şekilde PHP’deki
ord()
işlevine benzer: Bir karakterin ASCII değerini döndürür.
Sonuç olarak, PHP’deki ord()
işlevi bir dizgedeki tek tek karakterlerle çalışmak için kullanışlı bir araçtır. Bir karakteri karşılık gelen ASCII değerine dönüştürmenize olanak tanır; bu da kullanıcı girdisini doğrulama, şifreleme ve şifre çözme ve metin işleme gibi çeşitli uygulamalarda yararlı olabilir. Ayrıca ord()
fonksiyonunun kullanımı kolaydır ve PHP’nin tüm sürümlerinde desteklenir.