欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

【基础】PHP变量及变量作用域 - wildfox

程序员文章站 2022-05-27 20:38:14
...
新学PHP,比较有意思的语法,记录下。

1. 变量的作用域

作用域只分两个Global和Local,Global相对于整个.php文件来讲,Local是本地最小范围,是距离变量最近的范围,如:在函数中,在类中等。

2. 变量的声明

可能是由于PHP变量独特的$符号,所以声明PHP变量不需要关键字(类中除外),第一次赋值的时候自动创建了。

类中却比较独特了,由于类带有成员属性private、public、protected,那么在类中声明变量的时候是需要关键字修饰的。用前面所说的关键字或这个关键字var,但是不可以二者共用。

3. 样例说明

 1 php
 2     
 3     $VarFile = "Var_File";   //变量声明
 4     
 5     $nr = array("\n","\r","\n\r","\r\n");
 6     
 7     
 8 class TestClass
 9 {    
10     /*
11     *    分别用Var声明和private关键字声明
12     *   $var = value; 这种不可以
13     *    var private $var; 这种不可以
14     *    var private $var = value; 这种不可以
15     *    var $var; 这种不可以    
16     */
17     
18     var $VarClass = 'VarClass declared by keyword Var';            
19     private $VarClass2 = 'VarClass2 declared by keyword private';
20     
21     /*
22     *    增加global关键字,使用global作用域的变量
23     *   函数中声明变量方法与全局一样
24     */
25     
26     function GetAllVar() {
27         global $VarFile;
28         $VarFunction = 'Var_Function';
29         
30         $Temp = "$VarFile=".$VarFile."\r\n".
31                 "VarClass=".$this->VarClass."\r\n".
32                 "VarClass2=".$this->VarClass2."\r\n".
33                 "VarFunction=".$VarFunction."\r\n";
34         
35         
36         return str_replace($GLOBALS['nr'],"
",$Temp); 37 } 38 39 40 41 } 42 43 $MyClass = new TestClass("zzy"); 44 echo $MyClass->GetAllVar(); 45 46 ?>