Fonksiyonlar
Fonksiyonlar için, programlama dillerinin yapıtaşları diyebiliriz. Örneğin php’de en çok kullandığımız echo-print komutları dahi bir fonksiyondur. Bu kullandığımız fonksiyonlardan da görebileceğimiz gibi, fonksiyonların görevi; kendilerine gönderilen değer veya değerler doğrultusunda, görevi olan işlemleri yapmaktır.
Fonksiyonların, kullanım olarak iki tür mantığı vardır; birincisi sadece fonksiyona verilen görevi, yani işlemleri yapan fonksiyonlar, ikincisi de, fonksiyona gönderilen değerler ile yapması gereken işlemleri yapıp, yeni bir değer döndürmek.
Kullanacağımız fonksiyonu, öncelikle tanımlamamız gerekir. Burada tanımlarken, fonksiyonun ne işlemler yapacağını, hangi değerleri alıp ne değer göndereceğini biz belirleriz.
Fonksiyonların tanımlama ve kullanımları şu şekildedir:
function fonksiyon_adi ( deger1, deger2…. )
{
// fonksiyonda yapılacak olan işlemler, komutlar…
}
Daha iyi anlamak için, birkaç örnek yapalım:
<?
function isim() { // isim adında bir fonksiyon tanımladık. ve dışarıdan fonksiyona veri almayacağımız için, () parantez içindeki değer parametrelerini boş bıraktık.
echo “bilgenç”; // ekrana bilgenç yazdık.
}
isim(); // burada da tanımladığımız isim adındaki fonksiyonumuzu çağırdık.
?>
Fonksiyon tanımlanıp da, çağırılmadığı sürece, çalıştırılmazlar. Yani biz burada, isim diye bir fonksiyon tanımladık. Ancak isim(); şeklinde bu fonksiyonumuzu çağırmasaydık, fonksiyonumuz çalıştırılmayacak, sadece tanımlı olmakla kalacaktı.Bu tanımladığımız fonksiyonun tek görevi, echo ile ekrana bilgenç yazdırmaktır. Ama mantık olarak görevi ise, yukarıda anlatırken, fonksiyonların kullanımda iki türlü mantığı vardır dedik, bu tanımladığımız fonksiyon birinci mantık ile kullanılan fonksiyonlardandır. Yani sadece kendisinden yapılması istenen işlemleri yapar ve görevini tamamlar.
Şimdi de, diğer tip fonksiyonlardan bir örnek yapalım:
<?
function topla( $sayi1 , $sayi2 ) { // topla adında bir fonksiyon tanımladık. fonksiyonumuzun iki parametresi, yani dışarıdan gelen değeri var.
$sonuc= $sayi1 + $sayi2 ; // dışarıdan gelen iki değeri toplayıp, değeri sonuc adında bir değişkene atıyoruz.
return $sonuc; // ve sonuc değişkenini, fonksiyonun çağırıldığı yere geri gönderiyoruz.
}
echo topla(10,7); // fonksiyonumuzu çağırdık, ve fonksiyondan geri dönen değeri ekrana yazdırdık.
?>
programı çalıştırdığımızda, ekrana 17 yazdığını göreceğiz. Burada, fonksiyona gönderdiğimiz 10 ile 7 parametrelerini değiştirerek daha farklı sonuçlar da alabiliriz.
İkinci yaptığımız örnekten anlayabileceğiniz gibi, aslında fonksiyonların kullanım amaçlarından biri de, aynı işi yapacağımız yerlerde, tekrar tekrar aynı işlemleri yapmamaktır. Örneğin bir öğrencinin 3 yazılı ve 2 sözlü notunun ortalamasının programın bir çok yerinde lazım olduğunu düşünelim.. Bu programda, bu hesaplamayı her kullanacağımız yerde, (1.not + 2.not+ …… + 5.not ) / 5 gibi bir işlem yapacağımıza, bir fonksiyon tanımlarız, ve fonksiyona gönderdiğimiz değerlerle fonksiyon işlemleri yapar ve bize sonucu gönderir. Daha iyi anlamak için , bu örneği de yapalım:
<?
function ortalama( $yazili1, $yazili2, $yazili3, $sozlu1, $sozlu2 ){ // 5 parametreli, yani dışarıdan 5 değer alabilen ortalama adında bir fonksiyon tanımladık.
$toplam= $yazili1+$yazili2+$yazili3+$sozlu1+$sozlu2; // gelen değişkenleri toplayıp, değeri , toplam değişkenine atadık.
$sonuc=$toplam/5; // ortalamayı bulabilmek için, notların toplamını, not sayısına bölüp, sonuc değişkenine attık.
return $sonuc; // ve sonucu fonksiyona geri döndürdük.
}
echo ortalama( 50,60,80,70,70 ); // fonksiyona notları göndererek, geri dönen değeri ekrana yazdırdık.
?>