* 1. 声明语法;
* 2. 调用方式;
* 3. 参数设置;
* 4. 返回值;
* 5. 作用域
//声明
function hello() //无论有无参数,圆括号不能省略 { echo '欢迎来到php中文网学习'; }
//调用:按名调用,必须要带上圆括号
hello(); echo '<hr>'; //可以设置参数 function hello1($siteName) { echo '欢迎来到'.$siteName.'学习'; }
//现在调用就必须带上参数
hello1('php中文网'); hello1('m.sbmmt.com');
//如果调用时忘记了给参数,可以能函数参数一个默认值
function hello2($siteName = 'php中文网') { echo '欢迎来到'.$siteName.'学习'; } echo '<hr>';
//现在调用的时候可以传参数,也可不传参数
hello2(); echo '<br>'; hello2('PHP中文网_m.sbmmt.com');
//如果有多个参数,那么默认值要写到最后面
function hello3($name ,$siteName = 'php中文网') { echo '我是'.$name.',欢迎来到'.$siteName.'学习'; } echo '<hr>';
//调用方式
hello3('peter zhu'); //第一个参数没有默认值,必须传参 echo '<br>'; hello3('peter zhu', 'm.sbmmt.com'); //实参与形参的位置必须一一对应 echo '<hr>';
//作用域: 函数内部变量,外部不能访问,同样,外部变量函数内部也不能访问
$siteName = 'php中文网';
//外部变量,或者叫全局变量,会自动成为全局变量数组$GLOBALS中的一个元素,变量就是元素的键名
echo $GLOBALS['siteName']; //它里面的数据就是变量siteName中的值,而且这是一个超全局变量,可以在函数中使用 function hello4() { $name = 'peter zhu'; // return $siteName; return $GLOBALS['siteName']; } echo hello4(); echo '<br>'; echo $name; //外部是访问不到函数内的变量的,除非函数将这个变量返回到外部