首页 > 其他 > 详细

一个考察函数基础知识的题

时间:2015-03-22 22:41:01      阅读:382      评论:0      收藏:0      [点我收藏+]

$var1 = 5;

$var2 = 10;

function foo(&$my_var)

{

global $var1; 

$var1 += 2;   

$var2 = 4;    

$my_var += 3; 

return $var2;  

}


$my_var = 5;


echo foo($my_var) . "\n"; //4 传了$my_var的值到函数中(引用传值),但函数中返回到是return $var2;所以是4

echo $my_var . "\n"; //8 因为是引用传值,$my_var的值在上一步骤已经变成了8

echo $var1 . "\n"; //7 注意:此处函数已经被执行,$var1的值已经变成了7

echo $var2 . "\n"; //10 $var2虽然在内部声明了,但是只是局部变量,所以全局变量的值没有改变,还是10

$bar = ‘foo‘;

$my_var = 10; //4 不管$my_var的值传进去的是几,函数的返回值都是$var2的值,所以是4

echo $bar($my_var) . "\n";


本文出自 “学无止境” 博客,请务必保留此出处http://1294872.blog.51cto.com/1284872/1623090

一个考察函数基础知识的题

原文:http://1294872.blog.51cto.com/1284872/1623090

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!