<?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;// 输出:小张女士*/