PHP Fonksiyonu Tanımlama

Php Fonksiyon Çağırma

Php function Nedir ?

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.

Öncelikle php fonksiyonları nasıl oluşturacağımızı gösterelim:

function topla($sayi1, $sayi2) {

   $sonuc = $sayi1 + $sayi2;

   echo $sonuc;

}

topla(5, 10); //fonksiyon çağrımı

Parametreli  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.

php fonksiyonları nedir

function hosgeldin($isim = ‘Misafir’)

{

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

}

 hosgeldin();   //Çıktı:Hoş geldin Misafir

 hosgeldin(‘webirinci’);   // Çıktı:Hoş geldin webirinci

Return İfadesi ile Sonucu Atama

Yukarıda yaptığımız tüm örneklerde fonksiyon sonuçları echo ile ekrana yazdırdık. Peki ya biz php fonksiyonları üzerinden  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.

Örnek;

function topla($sayi1, $sayi2) {

   $sonuc = $sayi1 + $sayi2;

   return $sonuc;

}

$hesap = topla(10, 20);

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

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. 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; //Çıktı: 20

Serialize,UnserializeBase64,md5,sha1 Kullanımı 

Serialize,Unserialize

Serialize fonksiyonu, php içinde kullandığımız nesneleri ya da dizileri bir dosya yada değişken üzerinde string olarak saklamamıza yardımcı olur.

unserialize fonksiyonu yardımıyla da sakladığımız bu verileri geri çağırıp kullanabiliriz.

$dizi1=array(‘tc’ => 123,’ad’ => ‘ali’, ‘vize’ => 50,’final’=> 40);

var_dump($seri=serialize($dizi1)); //serileştiriliyor

var_dump(unserialize($seri));//seri değer dönüştürülüyor

Base4Encode,Base64Decode

Base64_Encode ve base64_decode, MIME sistemine göre bilgiyi 64 bit kodlar/kodçözer..

$q=$_SERVER[‘QUERY_STRING’];

echo “<br> Query string=”.$q;

//kodlama

$kodlanmis=base64_encode($q);

echo “<br> Kodlanmış query string=”.$kodlanmis;

//kod çözümü

$kod=base64_decode($kodlanmis);

echo “<br> query string değeri=”.$kod;

Sha1,Md5,Crc32

Md5 ile şifreleme

PHP- Kodu:

$parola=12345;
$guvenli_parola = md5($parola);
echo $guvenli_parola;

Bu kodları sayfamızdaki php taglarının arasına koydugumuz ve çalıştırdıgımız zaman karşımıza çıkacak 12345 in şifrelenmiş hali “827ccb0eea8a706c4c34a16891f84e7b” bu olacaktır.

Sha1 ile şifreleme

PHP- Kodu:

$parola=12345;
$guvenli_parola = sha1($parola);
echo $guvenli_parola;

Mantık falan aynı fakat bunu çalıştırdıgımız zaman alacagımız şifreleme farklı olacaktır sha1 ile”8cb2237d0679ca88db6464eac60da96345513964″ bu sonucu alacaz.Bununda mantıgı md5 ile aynıdır üretilen değer 32 bittir.

 

crc32 ile şifreleme

PHP- Kodu:

$parola=12345;
$guvenli_parola = crc32($parola);
echo $guvenli_parola;

Bu kodu çalıştırdığımız zaman karşımıza “-873121252” böyle bir sonuç çıkacaktır.

Birdahaki yazımızda görüşmek üzere…

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir