Program untuk menukar dua parameter integer menggunakan call by value & call by address di PHP ?

Lihat Diskusi

Tingkatkan Artikel

Simpan Artikel

Suka Artikel

Lihat Diskusi

Tingkatkan Artikel

Simpan Artikel

Suka Artikel

Panggilan berdasarkan nilai: Dalam panggilan berdasarkan nilai, kami akan mengirimkan nilai dari fungsi pemanggil ke fungsi yang dipanggil. Nilai argumen fungsi pemanggilan disalin langsung ke argumen terkait dari fungsi yang dipanggil. Jika ada modifikasi yang dilakukan pada argumen dari fungsi yang dipanggil, itu tidak akan berpengaruh pada argumen dari fungsi pemanggil karena argumen fungsi pemanggilan dan argumen fungsi yang dipanggil akan direpresentasikan di lokasi memori yang berbeda.

Contoh:

PHP

<?php

  

function sum($x) {

    $x = $x + 10;

    echo "The sum is $x<br>";

}

     

$n = 20;

sum($n);

 

echo "</br>";

echo "value of n is $n";

     

?>

Keluaran:

The sum is 30

value of n is 20

Panggilan dengan Referensi: Dalam mekanisme Call by reference, alamat suatu variabel akan dikirim dari fungsi pemanggil ke fungsi yang dipanggil. Alamat yang sesuai dari argumen fungsi panggilan akan langsung disalin ke argumen fungsi yang dipanggil. Setiap modifikasi yang dilakukan pada argumen fungsi yang dipanggil akan berpengaruh pada argumen fungsi pemanggilan karena argumen fungsi pemanggil dan fungsi yang dipanggil mewakili lokasi memori yang sama.

Contoh:

PHP

<?php

     

function sum(&$x) { 

      $x = $x + 10;

      echo "The sum is $x";

}

 

$n = 20;

sum($n);

echo"<br> value of n is $n";

 

?>

Keluaran:

The sum is 30
value of n is 30

Bertukar dua nomor menggunakan panggilan berdasarkan nilai:

PHP

<?php

    

function swap($x, $y) {

    $temp = $x;

    $x = $y;

    $y = $temp;

    echo "The value of x is:".$x."<br>";

    echo "The value of y is:".$y."<br><br>";

}

 

$a = 10;

$b = 20;

swap($a, $b);

echo "The value of a is :".$a."<br>";

echo "The value of b is :".$b."<br>";

 

?>

Keluaran:

The value of x is:20
The value of y is:10

The value of a is :10
The value of b is :20

Tukar dua nomor menggunakan panggilan dengan referensi:

PHP

<?php

 

function swap(&$x, &$y) { 

    $temp = $x;

    $x = $y;

    $y = $temp;

    echo "The value of x is: ".$x."<br>";

    echo "The value of y is: ".$y."<br><br>";

}

 

$a = 10;

$b = 20;

swap($a, $b);

echo "The value of a is: ".$a."<br>";

echo "The value of b is: ".$b."<br>";

 

?>

Keluaran:

The value of x is: 20
The value of y is: 10

The value of a is: 20
The value of b is: 10