PHP | 函数与变量的作用域

一、自定义函数

<?php
function f_name(){
    //函数体
}
?>

二、函数语言结构

if(),for(),while(),switch(),array(),echo(),print(),list(),isset(),unset(),foreach(),exit(),die(),include(),require(),empty();

三、系统函数

function_exists("tab");  判断是否是内置函数

<?php
function sum($i,$j){
    return $i+$j; 
}
var_dump(function_exists("sum"));//boolean true
var_dump(function_exists("abc"));//boolean false
var_dump(function_exists("count"));//boolean true
?>

四、变量的作用域

1.局部变量

函数内部的变量

2.全局变量

函数外面的变量

<?php
$i=10;//全局变量
function show(){
    $i++;//局部变量
}
show();
echo $i;//全局变量的i=10,故结果为10
?>

3.连接局部变量与全局变量

global $i;

<?php
$i=10;//全局变量
function show(){
    global $i;
    $i++;//局部变量
}
show();
echo $i;//全局变量的i=10,在函数内++,故结果为11
?>

4.超全局变量

1)常量

<?php
define('HOST','localhost');
function show(){
    echo HOST;
}
show();//localhost
?>

2)预定义常量

3)超全局数组

<?php
function show(){
    echo "<pre>";
    print_r($_GET);
    echo "</pre>";
}
show();//结果与下图左侧代码的结果相同
?>

5.静态变量(static $i)

函数内同一个变量在同名函数调用多次的情况下能够连续使用

<?php
$i=0;
function show(){
    static $i;
    return ++$i;
}
echo show();//1
echo '<br>';
echo show();//2
echo '<br>';
echo show();//3
echo '<br>';
echo show();//4
//用这种方法可以统计函数被调用的次数,全局变量$i的值不会干扰函数内部静态变量$i的值
?>

猜你喜欢

转载自blog.csdn.net/weixin_47982238/article/details/108351004