Comunitatea PHP Romania
 

 
Passing by Reference

Passing by Reference

You can pass variable to function by reference, so that function could modify its arguments. The syntax is as follows:

<?php
function foo (&$var)
{
    
$var++;
}

$a=5;
foo ($a);
// $a is 6 here
?>

Note that there's no reference sign on function call - only on function definition. Function definition alone is enough to correctly pass the argument by reference.

Following things can be passed by reference:

  • Variable, i.e. foo($a)

  • New statement, i.e. foo(new foobar())

  • Reference, returned from a function, i.e.:

    <?php
    function &bar()
    {
        
    $a = 5;
        return
    $a;
    }
    foo(bar());
    ?>

    See also explanations about returning by reference.

Any other expression should not be passed by reference, as the result is undefined. For example, the following examples of passing by reference are invalid:

<?php
function bar() // Note the missing &
{
    
$a = 5;
    return
$a;
}
foo(bar());

foo($a = 5); // Expression, not variable
foo(5); // Constant, not variable
?>

These requirements are for PHP 4.0.4 and later.

Ultimele discutii in forum RSS Forum

Ultimele articole Ultimele articole

Top membri

Pirahna Pirahna
acasa , in pat
carco carco
Bucuresti
Birkoff Birkoff
Bucuresti
Mascka Mascka
Braila
raul_ raul_
whooper whooper
Toronto ON
mihaitha mihaitha
Sibiu
gabysolomon gabysolomon
Bacau
oriceon oriceon
Constanta
garlicinicolae garlicinicolae

Newsletter


Email:
 inscriere
 renuntare
 
 Arhiva newsletter

Parteneriat

Copyright © 2001-2008 PHP Romania Add PHPRomania to Google Add PHPRomania to Del.icio.us Add PHPRomania to Stumbleupon Add PHPRomania to Yahoo! Add PHPRomania to Digg Add PHPRomania to Blink Nicole Kidman Wedding | Loans | Loans | Loans | WesternUnion
Ads: Partener Way2Web Nework: gazduire web | inregistrare domenii | web design | imobiliare | web hosting
Powered by Simplis