zoukankan      html  css  js  c++  java
  • PHP函数(一)-变量

    1.全局变量

    <?php
    	$a = 1;
    	$b = 2;
    	function test(){
    		echo $a + $b."<br>"; //运行结果为0
    	}
    	test();
    	echo $a + $b; //运行结果为3
    ?>
    

     可见,在函数中无法直接调用全局变量

    test()函数中的变量$a和$b都没有被赋值,进行空值运算,得到结果为0

    在函数中使用全局变量可以使用global和$GLOBALS数组

    使用global

    <?php
    	$a = 1;
    	$b = 2;
    	function test(){
    		global $a,$b;
    		echo $a + $b."<br>"; //运行结果为3
    	}
    	test();
    	echo $a + $b;  //运行结果为3
    ?>
    

    使用$GLOBALS数组

    <?php
    	$a = 1;
    	$b = 2;
    	function test(){
    		echo $GLOBALS['a'] + $GLOBALS['b']."<br>"; //运行结果为3
    	}
    	test();
    	echo $a + $b;  //运行结果为3
    ?>
    

     2.局部变量

    <?php
    	function test($a){
    		$b = 1;
    		echo $a + $b."<br>"; //运行结果为3
    	}
    	
    	test(2);
    	echo $a + $b; //运行结果为0
    ?>
    

     函数外不能访问函数内定义的变量,所以函数外进行空值运算,结果为0

    如果函数外部需要调用函数内的变量,需要通过return将其值传回到主程序区块

    <?php
    	function test($a){
    		$b = 2;
    		return $a + $b;
    	}
    	$c = test(1);
    	echo $c;  //运行结果为3
    ?>
    

     3.静态变量

    函数中的局部变量都是动态地分配储存空间的,在函数结束调用后自动释放。如果定义静态变量,则函数结束运行后,变量还会保存在内存里,当函数再次执行时,静态变量将接着上次的结果继续运算。

    通过static将局部变量设置为静态变量

    <?php
    	function test(){
    		static $a = 0;
    		echo $a;
    		$a ++;
    	}
    	test(); //运行结果为0
    	test(); //运行结果为1
    	test(); //运行结果为2
    	test(); //运行结果为3
    ?>
    
  • 相关阅读:
    hadoop分布式搭建
    朴素贝叶斯算法
    python数组并集交集补集
    VMware Workstation下安装Linux
    决策树ID3算法
    微信小程序开发测试
    筛法求素数质数
    STL——heap结构及算法
    STL——序列式容器
    使用位图字体工具BMFont从图片生成自定义字体
  • 原文地址:https://www.cnblogs.com/sch01ar/p/7887489.html
Copyright © 2011-2022 走看看