Open In App

How to pass PHP Variables by reference ?

Improve
Improve
Like Article
Like
Save
Share
Report

By default, PHP variables are passed by value as the function arguments in PHP. When variables in PHP is passed by value, the scope of the variable defined at function level bound within the scope of function. Changing either of the variables doesn’t have any effect on either of the variables.

Example:




<?php
  
// Function used for assigning new
// value to $string variable and 
// printing it
function print_string( $string ) {
    $string = "Function geeksforgeeks"."\n";
  
    // Print $string variable
    print($string);
}
  
// Driver code
$string = "Global geeksforgeeks"."\n";
print_string($string);
print($string);
?>


Output:

Function geeksforgeeks
Global geeksforgeeks

Pass by reference: When variables are passed by reference, use & (ampersand) symbol need to be added before variable argument. For example: function( &$x ). Scope of both global and function variable becomes global as both variables are defined by same reference. Therefore, whenever global variable is change, variable inside function also gets changed and vice-versa is applicable.

Example:




<?php
  
// Function used for assigning new value to 
// $string variable and printing it
function print_string( &$string ) {
      
    $string = "Function geeksforgeeks \n";
  
    // Print $string variable
    print( $string );
}
  
// Driver code
$string = "Global geeksforgeeks \n";
print_string( $string );
print( $string );
?>


Output:

Function geeksforgeeks 
Function geeksforgeeks


Last Updated : 20 Dec, 2018
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads