Php Dersleri

Php’de Fonksiyonlara Sınırsız Argüman Gönderme

php dersleri

Php’de yapacağımız işlemleri kolaylaştırmak adına fonksiyonlara başvururuz. Gerek kontrollerde gerekse uzun kod yapılarını tek seferde kullanışlı hale getirmek bir çok fonksiyon tanımlarız. Hatta bu fonksiyonlarda belirli argümanlar girerek, dışarıdan alınan verilerle işlemler yapmasını sağlarız. Fakat kimi zaman kullanmış olduğumuz fonksiyona fazladan bir argüman girme gereği görürüz. Böyle bir durumla karşılaştığımızda fonksiyonu kullandığımız tüm alanlarda değişikliğe gideriz yada diğer paramterelere varsayılan bir karşılık tanımlarız. Bu dersimizde bu soruna bir nebze de olsa çözüm bulmaya çalışacağız.

Gelen değerlerin kaç adet olduğunu saptamak için, func_num_args() fonksiyonunu kullanacağız. Gönderilen bu değerleri de func_get_args() fonksiyonu ile alıp işlemlerimizi gerçekleştireceğiz.

Önemli: Unutmayın ki bu sistem parametrelerinizi akıllı bir şekilde sıralamayacaktır. Yani, 1. Değerde gelecek olan veri, 3. Değere yazılmamalıdır. Fonksiyona gönderilecek veriler standart sıralama ile yapılmalıdır.

function veriler(){
    $Veriler     = func_get_args();
    foreach($Veriler as $Al){
        echo $Al;
    }
 }
veriler("ibrahim","Çevrük");

Yukarıda bu işlemle ilgili basit bir örnek yer almaktadır. Burada veriler fonksiyonuna gelen değerleri, $Veriler değişkenine atadık. Gelen değerler ARRAY olduğu için foreach ile parçalayıp tek tek dökülür hale getirdik. Sonrasında yapılacak işlemlere göre kullanabilirsiniz. Örneğin çıktısı, ibrahimÇevrük olaraktır.

Bu yapıyı birkaç şart ekleyip geliştirebiliriz. Yani zorunlu olarak var olması gereken parametre sayısının girilmesi gibi. Bunun için gelen parametre sayısını alıp, if kontrollerinden geçirmek yeterli olacaktır.

function veriler(){
    $GelenDegerler  = func_num_args();
    $Veriler        = func_get_args();
    if( $GelenDegerler >= 3 ){
        foreach($Veriler as $Al){
            echo $Al;
        }
    }else{
        echo 'Bu fonksiyone en az 3 parametre girmelisiniz';
    }
 }

 veriler("ibrahim","Çevrük");

Bu örnekte de yer alan sorgu ile birlikte fonksiyona en az 3 paramtere girilmesi şartını koymuş olduk. 3 parametre girilmediğinde fonksiyon hata mesajını verecektir. 3 ve fazla değerlerde ise verileri ekrana yazdıracaktır.

Bir önceki yazım olan Php Nesne Yönelimli Programlamada Sihirbaz Metotlar başlıklı makalemde Nesne yönelimli programlama, oop ve oop sınıfı hakkında bilgiler vermekteyim.

İlgilizi Çekecek Konular

Php ile Yapılan Basit Botu Veritabanına Kayıt Etme

ibrahim Çevrük

Php ile Dosya Yükleme(Upload) İşlemleri

ibrahim Çevrük

Performans Arttırmak İçin; Kısa if else Yapısının Kullanılışı

ibrahim Çevrük

Yorum Giriniz