• 周蓬安.blog的博客—强国博客—人民网 2019-05-10
  • 紫光阁中共中央国家机关工作委员会 2019-05-10
  • 感触名家笔下的端午文化吃香粽原来可以这样文艺 2019-05-09
  • 追梦夺冠游行嘲讽詹皇 百万人面前穿订制T恤羞辱他 2019-04-27
  • 《瘟疫传说》:黑死病恐怖 姐弟在绝望中求生 2019-04-10
  • 陕西国防工业职业技术学院百名大学生志愿者敬老院慰问孤寡老人陕西国防工业职业技术学院百名大学生志愿者敬老院慰问-陕西教育新闻 2019-04-08
  • 西藏拉萨:新家园 新生活 2019-04-08
  • 尊重和保障宗教信仰自由的中国实践 2019-04-06
  • 一敬泯恩仇 俄罗斯队主帅这个动作太暖了 2019-03-20
  • 四大名著剧组首次同台忆往事 经典影视剧如何铸就? 2018-12-07
  • “天眼”凝望 探秘宇宙 2018-12-07
  • 0

    3.2PHP变量的声明和引用赋值

    Posted by 撒得一地 on 2015年10月6日 in PHP入门教程
    国外稳定加速器推荐    Express | Vypr

    PHP变量声明

    和很多语言不同,在PHP中使用变量之前不需要声明变量(PHP4之前需要声明变量),只需要为变量赋值即可。PHP 中的变量用一个美元符号($)后面跟变量名来表示。变量名是区分大小写的。 

    一个有效的变量名由字母或者下划线开头,后面跟上任意数量的字母,数字,或者下划线。 在此所说的字母是 a-z,A-Z,以及 ASCII 字符从 127 到 255(0x7f-0xff)。 

    变量赋值,是指给变量一个具体的数据值,对于字符串和数字类型的变量,可以通过"="来实现,格式为:

    <?php $name=value;?>
    

    对变量赋值时,要遵循变量命名规则。如下面的变量命名是不合法的:

    <?php
      //变量名不能以数字字符开头
      $333abc = "adfd";
     
     //变量名不能以其它字符开头
      [email protected] = "split";
    ?>
    

    而下面的变量是合法的:

    <?php
      $word = "coin";
      $_material = "roof";
    ?>
    

    除了直接给变量赋值外,还有两种方式可为变量声明和赋值,一种是变量间的赋值。变量间的赋值是指赋值后两个变量使用各自的内存,互不干扰。

    例子1:

    <?php
      //声明变量$str1
      $str1 = "hello";
      //用$str1初始化$str2
    
      $str2 = $str1;
      $str1 = "nihao";
      echo $str1."<br/>";
      echo $str2;
    ?>
    输出结果:
    nihao
    hello
    

    PHP引用赋值

    另一种是引用赋值,从php4开始,php引入"引用赋值"。引用的概念是,用不同的名字访问同一个变量内容。当改变其中一个变量值时,另一个也跟着发生变化。使用&符号来表示引用。

    例子2:

    <?php
      $name = "peter";
      //使用引用赋值,$old_name已经赋值为peter
      $old_name = &$i;
      echo $old_name."<br/>";
    
      //重新给$name赋值
      $name = "sandy";
      echo $old_name;
    ?>
    上面结果输出:
    peter
    sandy
    

    注意:引用和复制的区别在于:复制是将原变量内容复制下来,开辟一个新的内存空间来保存。而引用则是给变量的内容再起一个名字,两个是共用同一个内存的。 

    虽然在 PHP 中并不需要初始化变量,但对变量进行初始化是个好习惯。未初始化的变量具有其类型的默认值 – 布尔类型的变量默认值是 FALSE ,整形和浮点型变量默认值是零,字符串型变量(例如用于 echo  中)默认值是空字符串以及数组变量的默认值是空数组。 

    依赖未初始化变量的默认值在某些情况下会有问题,例如把一个文件包含到另一个之中时碰上相同的变量名。另外把 register_globals 打开是一个主要的安全隐患。使用未初始化的变量会发出 E_NOTICE 错误,但是在向一个未初始化的数组附加单元时不会。 isset()语言结构可以用来检测一个变量是否已被初始化。 

    标签:,

    上一篇:

    下一篇:

    相关推荐

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    7 + 4 = ?

    网站地图|广东快乐10分开奖直播

    Copyright © 2015-2019 广东快乐10分开奖直播 All rights reserved.
    闽ICP备15015576号-1,版权所有?psz.

  • 周蓬安.blog的博客—强国博客—人民网 2019-05-10
  • 紫光阁中共中央国家机关工作委员会 2019-05-10
  • 感触名家笔下的端午文化吃香粽原来可以这样文艺 2019-05-09
  • 追梦夺冠游行嘲讽詹皇 百万人面前穿订制T恤羞辱他 2019-04-27
  • 《瘟疫传说》:黑死病恐怖 姐弟在绝望中求生 2019-04-10
  • 陕西国防工业职业技术学院百名大学生志愿者敬老院慰问孤寡老人陕西国防工业职业技术学院百名大学生志愿者敬老院慰问-陕西教育新闻 2019-04-08
  • 西藏拉萨:新家园 新生活 2019-04-08
  • 尊重和保障宗教信仰自由的中国实践 2019-04-06
  • 一敬泯恩仇 俄罗斯队主帅这个动作太暖了 2019-03-20
  • 四大名著剧组首次同台忆往事 经典影视剧如何铸就? 2018-12-07
  • “天眼”凝望 探秘宇宙 2018-12-07
  • 福建体育彩票31选7 西红柿pk10智能计划软件 2011212期p3试机号 时时彩走势图后一 新疆时时彩三星和值走势图 排列五发现一个规律 北京pk10网赌害人案例 福建时时彩计划软件 足球任选9场 北京赛车pk10直播视频 南国彩票七星彩预测 彩票网址 爱彩乐APP 黑龙江时时彩三星综合走势图 双色球2016028期开奖时间 北京赛车攻略技巧