设为首页 收藏本站
查看: 692|回复: 0

[经验分享] 4.PHP 教程_PHP 变量

[复制链接]

尚未签到

发表于 2015-8-26 07:03:32 | 显示全部楼层 |阅读模式
  PHP 变量
  变量是用于存储信息的"容器":



1 <?php
2     $x = 5;
3     $y = 6;
4     $z =  $x + $y;
5     echo $z;
6 ?>
  与代数相似
  x=5
  y=6
  z=x+y
  在代数中,我们使用字母(如x),并给它赋值(如5).
  从上面的表达数z=x+y,我们可以计算z的值为11.
  在PHP中,这些字母被称为变量
  
  PHP变量
  与代数相似,可以给PHP变量赋予某个值(x=5)或者表达式(z=x+y).
  变量可以是很短的名称(如x和y)或者更具描述性的名称(如age、camame、totalvolume).
  PHP变量规则:


  • 变量以$符号开始,后面跟着变量的名称
  • 变量名必须以字母或者下划线字符开始
  • 变量名只能包含字母数字字符以及下划线(A_z、0-9和_)
  • 变量名不能包含空格
  • 变量名是区分大小写的($y和$Y是连个不同的变量)
  
  创建(声明)PHP变量
  PHP没有声明变量的命令.
  变量在您第一次赋值给它的时候被创建:



1 <?php
2     $txt = "Hello World!";
3     $x = 5;
4     $y = 10.5
5 ?>
  在上面的语句执行中,变量txt将保存值Hello World!,且变量x将保存值5.
注释:当您赋一个文本值给变量时,请在文本值两侧加上引号.
  
  PHP是一门弱类型语言
  在上面的实例中,我们注意到,不必向PHP声明该变量的数据类型.
  PHP会根据变量的值,自动把变量转换为正确的数据类型.
  在强类型的编程语言中,我们必须在使用变量前先声明(定义)变量的类型和名称.
  
  PHP变量作用域
  变量的作用域是脚本中变量可被引用/使用的部分.
  PHP有四种不同的变量作用域:


  • local
  • global
  • static
  • parameter
  
  局部和全局作用域
  在所有函数定义的变量,拥有全局作用域,除了函数外,全局变量可以被脚本中的任何部分访问,要在一个函数中访问一个全局变量,需要使用global关键字.
  在PHP函数内部声明的变量是局部变量,仅能在函数内部访问:



1 <?php
2     $x = 5; //全局变量
3 function myTest(){
4     $y = 10; //局部变量
5     echo "<p>Test variables inside the function:</p>";
6     echo "Variable x is:$x";
7     echo "<br>";
8     echo "Variable y is :$y";
9 }
10 myTest();
11     echo "<p>Test variables outside the function:<p>";
12     echo "Variable x is: $x";
13     echo "<br>";
14     echo "Variable y is: $y";
15 ?>
  在以上实例中myTest()函数定义了$x和$y变量.$x变量在函数外声明,所以它是全局变量,$y变量在函数内声明所以它是局部变
  量.
当我们调用myTest()函数并输出两个变量的值,函数将会输出局部变量$y的值,但是不能输出$x的值,因为$x变量在函数外定义,无
  法在函数内使用,如果要在一个函数中访问一个全局变量,需要使用global关键字.
  然后我们在myTest()函数外输出两个变量的值,函数将会输出全局变量$x的值,但是不能输出$y的值,因为$y变量在函数中定义,
  属于局部变量.
  
  PHP global关键字
  global关键字用于函数内访问全局变量.
  在函数中调用函数外定义的全局变量,我们需要在函数中的变量前加上global关键字:
  



1 <?php
2     $x = 5;
3     $y = 10;
4 function myTest(){
5     global $x,$y;
6     $y = $x+$y;
7 }
8 myTest();
9 echo $y; //输出15
10 ?>
  PHP将所有全局变量存储在一个名为$GLOBALS[index]的数组中.index保存变量的名称.这个数组可以在函数内部访问,也可以直接用来更新全局变量.
  上面的实例可以写成这样
  



1 <?php
2     $x = 5;
3     $y = 10;
4 function myTest(){
5     $GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y'];
6 }
7 myTest();
8 echo $y;
9 ?>
  
   Static作用域
  当一个函数完成时,它的所有变量通常都会被删除.然而,有时候您希望某个局部变量不要被删除.
  要做到这一点,请在您第一次声明变量时使用static关键字:



1 <?php
2 function myTest(){
3     static $x = 0;
4     echo $x;
5     $x++;
6 }
7 myTest();
8 myTest();
9 myTest();
10 ?>
  然后,每次调用该函数时,该变量将会保留着函数前一次被调用时的值.
  注释:该变量仍然是函数的局部变量.
  
  参数的作用域
  参数是通过调用代码将值传递给函数的局部变量.
  参数是在参数列表中声明的,作为函数声明的一部分:



1 <?php
2 function myTest($x){
3     echo $x;
4 }
5 myTest(5);
6 ?>
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-104195-1-1.html 上篇帖子: [PHP] 用AppServ一步到位安装PHP服务器 下篇帖子: php生成xml文件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表