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
|
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
|
Keluaran:
The sum is 30 value of n is 30
Bertukar dua nomor menggunakan panggilan berdasarkan nilai:
PHP
|
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
|
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