<?php $sum=10;
function demo($number){
$number=$number+20;
}
demo(&$num);
echo $num,"\n";
?>
结果为什么是20,而不是30?
function demo($number){
$number=$number+20;
}
demo(&$num);
echo $num,"\n";
?>
结果为什么是20,而不是30?
/*
Deprecated: Call-time pass-by-reference has been deprecated; If you would like to pass it by reference, modify the declaration of demo(). If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file in /mydev_src/zend_framework_learn/www/test/index.php on line 7
20
新版本的php已经不让这样用了。应是这样
*/
$num=10;
function demo(&$number){
$number=$number+20;
}
demo($num);
echo $num,"\n";
你这个不对,结果是10,$num是全局变量应该改为$num=10;
function demo($number)
{
$number=$number+20;
return $number;
}
$num = demo($num);
echo $num,"\n";这样结果才是30
function demo(&$number){
$number=$number+20;
}
demo($num);
echo $num,"\n";如果是这个意思,那么结果是30