019PHP基础知识——函数(二)
<?php /** * 变量的作用范围 * 函数体内的变量只作用于函数体内。 */ /*$bbs="bbs.blog.com"; function say(){ $bbs="bbs论坛"; return $bbs;//输出:bbs论坛 } $bbs=say(); echo $bbs;//输出:bbs论坛*/ /*$bbs="bbs.blog.com"; function say(){ global $bbs;//global把变量定义成了一个全局变量 $bbs="bbs论坛";//修改了函数体外的变量。 echo $bbs;//输出:bbs论坛 } say(); echo $bbs;//输出:bbs论坛*/ /*echo '<pre>'; print_r($GLOBALS);//输出:系统自带的全局变量。*/ /*$bbs = "bbs.blog.com"; function say() { global $bbs;//global把变量定义成了一个全局变量 $bbs = "bbs论坛";//修改了函数体外的变量。 unset($bbs);//卸载了全局变量 $bbs = 111111111111;//重新定义$bbs。他就变成了局部变量了。 } say(); echo $bbs;//输出:bbs论坛*/ /*静态变量: static 1.是在所有对函数调用中共享。 2.只有在第一次调用的时候赋值。 * */ /*function funs(){ static $i=1;//只执行一次。值共享 $i++; echo $i."<br/>"; } funs();//输出:2 funs();//输出:3*/ /*按值参数传递和按址参数传递 * */ /*function eat($name){ //按值参数传递 $name=$name."女士"; echo $name."在吃饭<br/>"; } $name="小张"; eat($name); //输出:小张女士在吃饭 echo $name;// 输出:小张*/ /*function eat(&$name){ //按址参数传递 $name=$name."女士"; echo $name."在吃饭<br/>"; } $name="小张"; eat($name); //输出:小张女士在吃饭 echo $name;// 输出:小张女士*/