PHP Fonksiyonları echo , print , list vs. gibi PHP'nin birçok fonksiyonları vardır. http://tr. php. net/manual/tr/language. functions. php adresinden PHP resmi web sitesinden bütün fonksiyonlara ulaşabilirsiniz. Fonksiyon Oluşturmak Fonksiyon, kodlamalarda çokça kullanılan ve çok işe yarayan en önemli bölümlerdir. Hemen bir örnek ile başlayalım: PHP: <? function mesajyaz ?> Açıklama: Bir fonksiyon oluşturmak için function isim komutu kullanılır. Bu fonksiyonun sınırları ise işaretleri ile belirlenir. Yukarıdaki örneğin Ekran çıktısı yoktur. Bu örnek sadece fonksiyon oluşturur. Fonksiyon Çalıştırmak Fonksiyonların çalıştırılması için çağırılması gerekir. Örnek: PHP: <? function mesajyaz mesajyaz ; ?> Ekran Çıktısı : merhaba Açıklama: Örnekteki üst kısım bir önceki örneğin aynısıdır. Ancak koda eklenen mesajyaz ; ifadesi fonksiyonu çağırmak/çalıştırmak için kullanılır. Fonksiyona Veri Göndermek Oluşturduğunuz bir fonksiyona bir veya birden fazla veri gönderebilirsiniz. Ancak, fonksiyonun bu gönderilen şeyleri desteklemesi gerekir. Fonksiyona gönderilen her veriye "argüman" denir. Örnek: PHP: <? function mesajyaz mesajyaz ; ?> Açıklama : mesajyaz adında bir fonksiyon oluşturuyoruz. Bu fonksiyonun parantezleri arasına $mesaj adlı bir değişken atıyoruz. echo $mesaj; komutu ile $mesaj değişkenine verilen değeri ekrana basıyoruz. Şimdi gelelim fonksiyonu çalıştırmaya: mesajyaz ; şeklindeki bir komut. mesajyaz fonksiyonuna "Hoşgeldiniz" değerini gönderecektir. Bu değeri alan mesajyaz fonksiyonunu, $mesaj adlı bir değişkene değer olarak verecektir. Böylece $mesaj = "Hoşgeldiniz"; gibi bir komut kendi kendine oluşacaktır. echo $mesaj; ise $mesaj değişkeninin değeri olan Hoşgeldiniz yazısını ekrana basacaktır. Fonksiyona Birden Fazla Veri Göndermek Format : fonksiyonismi(argüman1, argüman2, argüman3,...) Açıklama : Bir fonksiyona birden fazla veri göndermek için argümanlar arasına virgül konur. Örnek : PHP: <? function topla($sayi1,$sayi2) topla(5,3); ?> Ekran Çıktısı : 8 olacaktır. Açıklama : topla adlı bir fonksiyon oluşturup $sayi1 ve $sayi2 değişkenlerine bu fonksiyona gelen verileri argüman olarak atadık. $sonuc = $sayi1 + $sayi2; işleminde $sonuc değişkenine $sayi1 ve $sayi2 nin toplamını değer olarak verdik. echo $sonuc; işlemi ile $sonuc değişkenini ekrana bastık. Argümanlara Varsayılan Değer Vermek Örnek: PHP: <? function mesajyaz mesajyaz ; // argümansız fonksiyon çalıştırma mesajyaz ; // argümanlı fonksiyon çalıştırma?> Ekran Çıktısı : Fonksiyonu mesajyaz ; şeklinde çağırınca Merhaba Fonksiyonu mesajyaz ; şeklinde çağırınca Merhaba PHP Açıklama : Eğer fonksiyona argüman gönderilmez ise function mesajyaz komutundaki $mesaj değişkenine verilen varsayılan değer kullanılır. Varsayılan değer, $mesaj="Merhaba" olduğundan ekrana Merhaba yazılır. Argümanları Dizi Değişkene Atamak Örnek: PHP: <? function metin_ekle $metinler = array ; metin_ekle ; ?> Açıklama : metin_ekle fonksiyonu oluşturduk ve argüman olarak $metin diye bir değişken atadık. Fonksiyonu çağırırken metin_ekle ; şeklinde bir deneme yaptık. Fonksiyona $metinler dizi değişkenini argüman olarak gönderdik. Bu argüman, fonksiyondaki $metin değişkenine değer olarak verildi. Doğal olarak $mesaj değişkeni $metinler değişkeninin türü oldu. $metinler dizi değişken olduğu için $metin de dizi değişken oldu. Dizi değişkenlerin değerleri, $dizidegisken , $dizidegisken , $dizidegisken ... şeklinde çağırılır. Örnekte ise $metin , $metin diye çağırdık. Fonksiyonlardan Yanıt Almak Bir top düşünün. Bu topu duvara karşı attığınızda top seker ve geri döner. Ama bir yumurta attığınızda o yumurta kırılır ve yere düşer . İşte fonksiyonlardaki yanıtları topun duvara çarpıp geri dönmesi gibi düşünebiliriz. Örnek: PHP: <? function topla $rakamlar = array(4,9); echo topla ; ?> Ekran çıktısı : 13 olacaktır. Açıklama : Örnekte yeni bir kod göreceksiniz. Bu return dur. Return, fonksiyondan dönen değerdir. echo topla(4,9); işleminin açıklaması, topla fonksiyonuna 4 ve 9 rakamlarını gönder ve dönen yanıtı echo ile ekrana bas.. Fonksiyon Dışındaki Değişkeni Fonksiyon İçinde Kullanmak Örnek: PHP: <? $ad = "Suat"; function isimyaz isimyaz ; ?> Açıklama : Örnekteki gibi bir kodu çalıştırmak istediğinizde hata mesajı alırsınız. Fonksiyon dışındaki bir değişkeni fonksiyon içinde kullanmak için PHP'nin global komutu kullanılır. PHP: <? $ad = "Suat"; function isimyaz isimyaz ; ?> Ekran Çıktısı: Suat olacaktır. Açıklama : global $ad; komutu, fonksiyon dışındaki $ad değişkeninin fonksiyon içinde de kullanılmasını sağlar. global kullanmadan Fonksiyon dışındaki bir değişkeni fonksiyon içinde değiştirirsek ne olur? Örnek: PHP: <? $ad= "Suat "; echo $ad; //Suat function isimyaz isimyaz ; //fonksiyonun çalıştırılması echo $ad; //Suat?> Ekran Çıktısı : Suat Atilla Suat olacaktır. Açıklama : ilk baştaki echo $ad; komutu, $ad= "Suat "; ile tanımlanan Suat değerini ekrana basar. ikinci echo komutu, fonksiyon içinde $ad = "Atilla "; ile tanımlanan Atilla değerini ekrana basar. üçüncü echo komutu, ilk başta tanımlanan $ad değişkeninin fonksiyon tarafından tanımlanan $ad değişkenini etkilemediğini kanıtlar. Yani buradan, fonksiyondaki $ad değişkeninin değiştirme işlemi olmadığı, bilakis yeni bir değişken tanımladığı anlaşılır. Ancak bu tanımlama, fonksiyon dışına yansımaz. Örnek: PHP: <? function isimyaz isimyaz ; //fonksiyonun çalıştırılması echo $ad; //bu komut hata verir. ?> Açıklama : Örnekten anlaşıldığı gibi, fonksiyon içindeki değişken, fonksiyon dışında tanınmaz bilinmez. Dolayısıyla bir değişkeni fonksiyon içinde de rahatça kullanabilmek için global komutunu kullanmalıyız. Fonksiyon Dışındaki Bir Değişkeni Fonksiyon İçindeki Başka Bir Değişkene Atamak PHP'nin yerleşik değişkenlerinden biri de $GLOBALS dizi değişkenidir. Örnek ile başlayalım: PHP: <? $ad = "Suat"; function kullaniciyaz kullaniciyaz ; ?> Ekran Çıktısı : Kullanıcımız: Suat olacaktır. Açıklama : $kullanici = $GLOBALS ; komutu, $kullanici adlı bir değişkene oluştur ve değerine GLOBAL olan $ad değişkenin değerini ver demektir... Fonksiyonda Statik Değişken Tutmak Fonksiyon içersinde herhangi bir değişkene verilen değeri saklayabilirsiniz. Böylece fonksiyonun kaç defa çalıştırıldığı veya daha önceden belirlediğiniz bir değeri tespit edebilirsiniz. Örnek: PHP: <? function saydir echo "Fonksiyonun birinci kez çağırılması<br>"; saydir ; echo "Fonksiyonun ikinci kez çağırılması<br>"; saydir ; echo "Fonksiyonun üçüncü kez çağırılması<br>"; saydir ; ?> Ekran Çıktısı : Fonksiyonun birinci kez çağırılması Fonksiyonun tuttuğu sayı : 1 Fonksiyonun ikinci kez çağırılması Fonksiyonun tuttuğu sayı : 2 Fonksiyonun üçüncü kez çağırılması Fonksiyonun tuttuğu sayı : 3 Açıklama : saydir fonksiyonu her çalıştığında static komutu ile tanımlanan $sayi değişkeni her defasında $sayi++; komutu ile bir arttırarak ekrana basar. Dolayısıyla bir önceki sayıya 1 eklenmiş olur. static komutunun özelliği hem değişkenin değerini hafızasında tutar hemde ilk değeri verir. static $sayi=0; komutunun anlamı, $sayi değişkenine 0 değerini ver ve bu değişkeni statik yap demektir. @51m©@