将心比心,方得人心~

函数按引用传递和按值传递的区别实例?

周洲 2017-04-06 21:22:36

函数按引用传递和按值传递的区别实例?

按值传递:

<?php

$prices = 50;
$tax = 0.5;
function functionPrices($prices,$tax) {
    $prices = $prices + $prices * $tax;
    $tax = $tax * $tax;
    echo $prices;   //75
    echo '|';
    echo $tax;      //0.25
}
functionPrices($prices,$tax);
echo $prices;   //50
echo '|';
echo $tax;      //0.5

按引用传递只需在参数前面加&符号:

<?php

$prices = 50;
$tax = 0.5;
function functionPrices(&$prices,&$tax) {
    $prices = $prices + $prices * $tax;
    $tax = $tax * $tax;
    echo $prices;   //75
    echo '|';
    echo $tax;      //0.25
}
functionPrices($prices,$tax);
echo $prices;   //75
echo '|';
echo $tax;      //0.25

结论:

通过上面两个例子可知,在函数内部和外部具有相同变量的情况下,函数内部变量和外面变量没有任何关系,互不影响。

而如果按引用传递的话,函数内部的变量发生改变,外面相同变量名的变量也会跟着改变。













打赏

『微信打赏』

Tag标签php 

我是有底线的