+90 531 872 73 33
PHP fonksiyon kullanımı ve örnekleri

PHP fonksiyon kullanımı ve örnekleri

  • 1,067 Kez okundu
  • Php
  • 0 Yorum

PHP fonksiyon kullanımı

PHP’nin kendi içinde yüzlerce fonksiyonu vardır. Diğer derslerde gördüğümüz isset()empty(),unset() gibi. Fonksiyon oluşturmak ve kullanmak gayet basit, ama basit olduğu gibi derin konuları da var.

İlk önce nasıl bir fonksiyon oluşturacağımızı gösterelim:

function selam_ver() {

   echo 'Selam!';

}

Yukarıda selam_ver() adında bir fonksiyon oluşturduk. Bu şekilde bir kodu çalıştırsak ekrana bir çıktı vermez. Çünkü şuan sadece bir fonksiyon tanımladık, içine yazılan kodların çalışması için o fonksiyonu çağırmamız gerekiyor.

Hemen bu fonksiyonun altına selam_ver(); yazacak olursak eğer, işte o zaman ekranda Selam!yazar.

Hemen başka bir örnek daha verelim:

function rakamlar() {

   for($sayi = 0; $sayi<10; $sayi++) {

      echo $sayi;

   }

}

 

rakamlar(); // oluşturduğumuz fonksiyonu çağıralım

Ekranda 0123456789 yazacaktır.

Fonksiyonlara parametre ekleme

Yukarıdaki örnekte yaptığımız fonksiyonlar dışarıdan veri almadan, her seferinde çağrıldıklarında aynı şeyi çalıştıracak olan fonksiyonlardı. Ama şimdi bu fonksiyonlara bir kaç parametre eklettirerek farklı kullanımlara kapılarını açabiliriz.

Hemen parametreli bir fonksiyon yapalım:

function topla($sayi1, $sayi2) {

   $sonuc = $sayi1 + $sayi2;

   echo $sonuc;

}

 

topla(5, 10);

Şimdi topla adında bir fonksiyon oluşturduk ve buna 2 adet parametre ekledik. $sayi1 ve $sayi2parametreleri bizim o fonksiyonu kullanırken yazacağım değerlerin yükleyeceği değişkenlerin adı.

Biz topla(5, 10) dediğimizde fonksiyon içinde $sayi1 değişkeninin değeri 5, $sayi2 değişkeninin değeri ise 10 olacak. Ve ekranda da 15 yazacaktır.

Parametreli fonksiyona bir başka örnek daha verelim:

function bolunur_mu($bu, $buna) {

   $kalan = $bu % $buna;

   if($kalan == 0) {

      echo $bu . ' sayısı ' . $buna . ' sayısına bölünür!';

   } else {

      echo $bu . ' sayısı ' . $buna . ' sayısına bölünmez! (kalan: '.$kalan.')';

   }

}

 

bolunur_mu(10, 2);

bolunur_mu(25, 10);

İki rakamın birbirine bölünüp bölünmediğini kontrol eden bir fonksiyon yaptık. Ve bu fonksiyonu 2 farklı değerde kullanıp çağırdık. Bu çalışmanın sonunda ekranda yazacak olanlar:

10 sayısı 2 sayısına bölünür!

25 sayısı 10 sayısına bölünmez! (kalan: 5)

Parametrelere varsayılan değer verme

Parametreli bir fonksiyon yaptığımızda sorunsuz çalışabilmesi için tüm parametrelerin girilmesi gerekir. Mesela yukarıda verdiğimiz topla fonksiyonunu topla(1); şeklinde çalışmaya kalktığımızda PHP hata verecektir.

Çünkü fonksiyonu 2 tane parametre ile çalışmak üzere tasarladık. Ama bu durumlara bir istisna sağlayarak parametrelerimize varsayılan değer atayıp, parametresiz de çalışmalarını sağlayabiliriz.
Şimdi varsayılan parametreli bir fonksiyon yapalım:

function hosgeldin($isim = 'Misafir') {

   echo 'Hoşgeldin ' . $isim . '! ';

}

 

hosgeldin();

hosgeldin('Musa');

Örnekte hosgeldin() fonksiyonunu ilk olarak parametresiz, ikinci olarak da parametreli çalıştırdık. Bu durumda fonksiyonun parametresini tanımladığımız yerde hosgeldin($isim = ‘misafir’) şeklinde parametreye varsayılan değer atadığımız için boş bıraktığımızda o parametreye bu değeri verecektir. Yani ekranın çıktısı aşağıdaki gibi olacaktır:

Hoşgeldin Misafir!

Hoşgeldin Musa!

Return ifadesi ile sonucu atama

Yukarıda yaptığımız tüm örneklerde fonksiyon sonuçları echo ile ekrana yazdırdık. Peki ya biz fonksiyonlardan elde ettiğimiz sonuçları ekrana yazdırmak değilde bir değişkene atayıp kullanmak istiyorsak? İşte o zaman return ifadesini kullanacağız.

Return ifadesi ile fonksiyon içinde elde ettiğimiz sonucu dışarıya aktarırız. Hemen bir örnek ile hayata geçirelim:

function topla($sayi1, $sayi2) {

   $sonuc = $sayi1 + $sayi2;

   return $sonuc;

}

 

$hesap = topla(10, 20);

echo 'Fonksiyon ile toplama yaptık ve sonuç: ' . $hesap;

İşte yukarıdaki örnekte gördüğün gibi bu sefer aynı topla() fonksiyonu ile echo yerine returnyazdık. Bu da fonksiyonun sonucunu ona eşitlediğimiz bir değişkene atadı. Yani fonksiyon toplamayı yaptı ve sonucu $hesap değişkenine aktardı sonra biz onu echo ile ekrana yazdırdık.

Fonksiyonlarda global ifadesi kullanımı ve örneği

Fonksiyonların içerisinde tanımladığın değişkenler dışarıya gönderilmez ve aynı şekilde dışarıda tanımladığın bir değişken fonksiyon içinde görülmez. Yani fonksiyonlara kendi içinde bir dünya diyebilirsin. Hemen örnek ile kafanda canlandıralım:

function deneme() {

   $isim = 'Musa';

}

 

deneme();

echo $isim;

Bu kodu çalıştırdığımızda PHP yalnızca isim adında bir değişken olmadığı için hata verir. Biz $isimdeğişkenini fonksiyon içinde tanımladık ve yalnızca orada kullanabiliriz. Dışarıya aktarmak için return ifadesini kullanıyoruz.

Eğer fonksiyon içine dışarıdan bir değişkeni sokmak istiyorsak, yani global bir değişkeni çağırmak istiyorsak global ifadesini kullanırız.

$isim = 'Musa';

 

function selam() {

   global $isim; // Dışarıda tanımlanmış bir değişkeni fonksiyon içine çağırdık

   echo 'Selam ' . $isim;

}

 

selam();

Ekranda Selam Musa yazar. Global ifadesini kullanarak fonksiyon dışında yazdığımız bir değişkeni çağırdık ve ekrana yazdırdık.
Return ifadesi kullanılmadan fonksiyon içindeki bir değişkeni veya çıktıyı dışarı aktaramayız.Global ifadesi kullanılmadan da dışarıda kullanılan bir değişkeni fonksiyon içine aktaramayız.

Fonksiyonlarda referans ile değer atama

Return ifadesini kullanarak değer atama yaparken fonksiyonun başında bir değişkeni ona atamak için (=) eşittir operatörünü kullanırız. Peki dikkatini çekti mi bilmiyorum ama dizilerde sıralama yapan fonksiyonları (sort(), rsort()) bu şekilde kullanmıyorduk.

Sadece fonksiyonu çalıştırarak dışarıdan parametreye gönderilen değişkenin değerini referanslar ile değiştirebiliriz.

Referans uygulamak istediğimiz değişkenin başına (&) operatörünü koyarız. Bu operatörü yerleştirdiğimiz parametreler, dışarıdan verilecek olan değişkenlerle beraber değişirler.

function topla(&$sayi) {

   $sayi = $sayi + 10;

}

 

$x = 10;

topla($x);

echo $x;

Ekranda 20 yazar. Topla fonksiyonunun parametresinde kullandığımız referans nedeniyle o parametreye yüklenen değişkenin değeri fonksiyon içinde değiştirmemizle değişecek. Burada da fonksiyon içinde o parametreye +10 eklediğimiz için dışarıdaki değişkeninde değeri 10 artmış oldu.

Henüz kimse yorum eklememiş

YORUM YAPMAK İSTER MİSİN?

    En Çok Okunan Yazılar
    Etiket Bulutu
    fonksiyon global kullanımıfonksiyon nasıl yapılırfonksiyonreferansfonksiyon tanımlamafunction globalglobal ifadesiphp fonksiyonphp fonksiyon kullanımıphp fonksiyon örnekleriphp fonksiyonlarphp fonksiyonlar nedirphp fonksiyonlarıphp functionphp referansreturn ifadesivarsayılan parametrebreak ifadesido while döngüsüdöngü örnekleridöngüler nasıl kullanılırdöngülere örnekdöngüleri durdurumakfor döngüsüforeach döngüsüphp döngülerphp döngüleriphp for döngüsüphp foreach döngüsüphp loopphp while döngüsüphp while döngüsü örnekleriwhile döngüsüPHP ile ekrana yazı yazmaekrana yamaDeğişkenlerphp değişkenlerdeğişkenleri kontrol etmekdeğişkenlerphp değişkenlerle matematiksel işlemlerconstfinaloopprivateprotectedpublicstaticphp datephp mktimephp saatphp strftimephp strtotimephp tarihphp tarih farkıphp türkçe tarihphp türkiye saatiphp unix timestampunixtimephp tarih formatıphp mysql tarihmysql tarih formatıgelen kutusu mailphp gmail smtpphp mailphp mail dosya eklemephp mail dosya göndermephp mail göndermekphp smtp classphp smtp mailsmtp mailsmtp mail göndermespama düşmeden mail göndermephpveritabanısayfalamaphp ile veritabanındaki veriyi sayfalama mantığıgoogle sıralamaseoseo rehberigoogle başarıpagerankseo nedirseo puanıseo başarısısite içi seosite dışı seobacklinkbacklink almaanahtar kelimelerphpde fonksiyonlarfunctiongetdate()date()time()mktime()Zaman FonksiyonlarıStatik FonksiyonlarGlobal Fonksiyonlarcsscss3menüyatay menücss yatay menüyatay menü yapımıhtmlhtml5wordpresswordpress sayfa şablonuwordpress başlangıçgoogle map değişiklikgoogle adres değişiklikgoogle mapte adresimi değiştirmekgoogle haritalara firma eklemekgoogle haritalara yeni adres eklemekpr6pagerank6prli sitepagerank yüksek backlinkgoogleda ilk sayfaalexa düşürmepagerank yükseltmepr yükseltmeseo backlinkseo uyumlu makalepagerank7pr7ücretsiz pr7 backlinkücretsiz pagerank 7 backlinkprogramlama mantığıalgoritmaalgoritmaya girişprogram yazmayazılım öğrenwindows loadersiteye loader eklemeloader yapımıcss3 loaderjquery loadersiteye lütfen bekleyiniz yazısıIP adresiniz değiştirildicpanelcpanel hataIP adresiniz değiştirildi hatası