Dubluve.net » closures http://www.dubluve.net Biz de yazılımcıyız Wed, 18 Feb 2015 19:18:05 +0000 tr-TR hourly 1 http://wordpress.org/?v=3.9.1 isimsiz fonksiyonlar (anonymous functions – closures) (php 5.3 ve sonrasi) http://www.dubluve.net/2012/10/05/isimsiz-fonksiyonlar-anonymous-functions-closures-php-5-3-ve-sonrasi/ http://www.dubluve.net/2012/10/05/isimsiz-fonksiyonlar-anonymous-functions-closures-php-5-3-ve-sonrasi/#comments Fri, 05 Oct 2012 14:35:28 +0000 http://dubluve.net/?p=1861 İsimsiz fonksiyonlar php’nin 5.3 ve sonraki sürümlerinde yer alan güzel bir özelliktir.

Nedir isimsiz fonksiyon? 

Bir mantığa veya algoritmaya ihtiyacınız var ancak bunun dünyanızda o kadar da önemli bir yeri yok. Belki sadece kodunuzu düzgün yazmak istiyorsunuz, veya yapacağınız şeyi daha temiz yapmak istiyorsunuz.

Bu noktada, isimsiz fonksiyonların kullanımı tercih edilebilir.

$selam = function($isim){
    printf("Merhaba %s\r\n", $isim);
};//şeklinde tanımlayıp
echo $selam('Emre');//şeklinde kullanabiliriz.

Yani anlayacağımız şekilde söylersek, bir değişkene bir fonksiyon atamış gibi bir şey oluruz.

php 5.4 ten itibaren de bu isimsiz fonksiyonların içinde “$this” kelimesi de kullanılabiliyor oldu. Bir Class içerisindeki bir metodun içinde kullanıldığında, $this->fonksiyon_ismi() diyerek ilgili classtaki fonksiyonu da çalıştırabiliyor artık.

http://www.php.net/manual/en/functions.anonymous.php#106046 linkinde ise ilginç (güzel) bir kullanımı var. Bir göz atmanızı tavsiye ederim. (kullanmanızı tavsiye etmem ama :), php içinde html’e karşıyım. )

]]>
http://www.dubluve.net/2012/10/05/isimsiz-fonksiyonlar-anonymous-functions-closures-php-5-3-ve-sonrasi/feed/ 9