Bodyguardd 1
Bodyguardd
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
noisiv 1
noisiv
Manwe Work 1
Manwe Work
romegames 1
romegames
Agora Metin2 1
Agora Metin2
Reklam vermek için turkmmo@gmail.com

PHP - Değere Göre Çağrı

Türkiye'nin ilk OldSchool MOBİL 1-99 Sunucusu Sezar2 9 Ekim'de Açılıyor! Rekor Açılışı Kaçırma! HEMEN TIKLA!

cats.jpg


Varsayılan olarak, PHP bir fonksiyona argüman geçirmek için "değere göre çağırma" mekanizmasını kullanır. Bir fonksiyon çağrıldığında, gerçek argümanların değerleri fonksiyon tanımının resmi argümanlarına kopyalanır.

Fonksiyon gövdesinin yürütülmesi sırasında, resmi argümanlardan herhangi birinin değerinde bir değişiklik olursa , bu gerçek argümanlara yansıtılmaz.

  • Gerçek Argümanlar − Bir fonksiyon çağrısında geçirilen argümanlar.
  • Resmi Argümanlar − Bir fonksiyon tanımı içinde bildirilen argümanlar.

Örnek​

Aşağıdaki kodda kullanılan fonksiyonu ele alalım:

PHP:
<?php
   function  change_name($nm) {
      echo "Initially the name is $nm \n";
      $nm = $nm."_new";
      echo "This function changes the name to $nm \n";
   }

   $name = "John";
   echo "My name is $name \n";
   change_name($name);
   echo "My name is still $name";
?>

Aşağıdaki çıktıyı üretecektir:

My name is John
Initially the name is John
This function changes the name to John_new
My name is still John

Bu örnekte, change_name() fonksiyonu kendisine geçirilen dize argümanına _new ekler. Ancak, kendisine geçirilen değişkenin değeri, fonksiyonun yürütülmesinden sonra değişmeden kalır.

Resmi argümanlar, aslında, fonksiyon için yerel değişkenler gibi davranır. Böyle bir değişkene yalnızca başlatıldığı kapsam içinde erişilebilir. Bir fonksiyon için, kıvırcık parantezlerle "{ }" işaretlenen gövdesi kapsamıdır. Bu kapsam içindeki herhangi bir değişken, dışındaki kod için kullanılamaz. Dolayısıyla, herhangi bir yerel değişkenin manipülasyonunun dışarıdaki dünya üzerinde hiçbir etkisi yoktur.

"Değere göre çağırma" yöntemi, kendisine geçirilen değerleri kullanan bir fonksiyon için uygundur. Belirli hesaplamaları gerçekleştirir ve kendisine geçirilen parametrelerin değerini değiştirmek zorunda kalmadan sonucu döndürür.

Not: Formül tipi hesaplama gerçekleştiren herhangi bir fonksiyon, değere göre çağırma örneğidir.


Örnek​

Aşağıdaki örneğe bir göz atın.

PHP:
<?php
   function addFunction($num1, $num2) {
      $sum = $num1 + $num2;
      return $sum;
   }
   $x = 10;
   $y = 20;
   $num = addFunction($x, $y);
   echo "Sum of the two numbers is : $num";
?>

Aşağıdaki çıktıyı üretecektir:

Sum of the two numbers is : 30

​

Örnek​

İşte argümanı değere göre geçirerek bir fonksiyonu çağırmanın başka bir örneği. Fonksiyon alınan sayıyı 1 artırır, ancak bu ona geçirilen değişkeni etkilemez.

PHP:
<?php
   function increment($num) {
      echo "The initial value: $num \n";
      $num++;
      echo "This function increments the number by 1 to $num \n";
   }
   $x = 10;
   increment($x);
   echo "Number has not changed: $x";
?>

Aşağıdaki çıktıyı üretecektir:

The initial value: 10
This function increments the number by 1 to 11
Number has not changed: 10

PHP ayrıca çağrı sırasında değişkenlerin referansının fonksiyona geçirilmesini de destekler.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst