写在前面:

  变量可以形象的解释为信息的容器(存信息的东西)。比如说$x=8,相当于把8给放到x里面,以后操作$x的时候就相当于操作8 》5+$x结果为13

----------------------------------------------------------------------------------------------------

PHP中的变量命名规则:

  由两部分组成:美元符号$变量名

    其中变量名的要求是:1.不能以数字开头

              2.以字母下划线开头

              3.变量中只能包含字母数字下划线(a-z,A-Z,0-9,_)

              4.第一节语法讲过的,变量名对大小写敏感(或叫区分大小写),即$a和$A是两个不同的变量

PHP没有定义变量的关键字去限定变量的类型,想定义变量直接就是美元符号加变量名=变量值,变量值部分,数字直接写,字符串加引号,系统会根据变量值自动定义变量的类型

限定变量作用域的关键字:

1.在不加限定作用域关键字时,区分一个变量是全局变量还是局部变量是根据该变量所在的位置函数外面声明的变量为全局变量函数内部声明的变量为局部变量局部变量好理解就是只有在该函数内部用,这里的全局变量也只是函数外的全局,对函数内部没有影响

2.从1可以看出,可以在不同的函数中声明相同的变量名,因为函数内不加关键字的变量只对该函数内部有用

*.默认情况下如果显性的给出变量前面限定关键字,则全局变量默认有个隐含的global,局部变量默认有个隐含的local

上面的1,2讲的都是隐式的情况,那限定作用范围的关键字,到底什么时候用呢?

  global:在函数中的变量要引用函数外的变量(全局变量),即在函数中放一个全局变量,这种情况下,函数里面的变量要写成  global $变量名 的形式,

  static:

    前提:一般情况下,函数执行完成后,里面的变量也随之被删除

    在知道上一行前提的情况下,在函数执行完成后,还想保留函数里面的变量,这时用static $变量名

    举例:函数a()里面是这么写的

      static b=1;

      echo "$b";

      b++;

    第一次执行a()时,echo的是1,第二次调用a()的时候echo的是2,第三次调用a()的时候echo的是3,也就是说在这个函数中,b这个变量总是上一次值行完函数后的最新值,而不是初始的1,关于static还有一点就是:它修饰的变量依然是局部变量

PHP-变量(www.w3school.com.cn/php)的更多相关文章

  1. 关于JavaScript lastIndexOf() 方法 w3school.com.cn写的不一定全对

    关于JavaScript lastIndexOf() 方法 w3school.com.cn的表述是 定义和用法 lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的 ...

  2. HTML URL 编码:请参阅:http://www.w3school.com.cn/tags/html_ref_urlencode.html

    http://www.w3school.com.cn/tags/html_ref_urlencode.html

  3. input输入框的readonly属性-----http://www.w3school.com.cn/tags/tag_input.asp

    http://www.w3school.com.cn/tags/tag_input.asp input输入框的readonly属性 查询方法: 1.先找官方的文档,api 2.官方的有看不懂的再百度相 ...

  4. scrapy研究探索(二)——爬w3school.com.cn

    下午被一个问题困扰了好一阵.终于使用还有一种方式解决. 開始教程二.关于Scrapy安装.介绍等请移步至教程(一)(http://blog.csdn.net/u012150179/article/de ...

  5. PHP-语法(www.w3school.com.cn/php)

    写在前面: 假设系统里已安装PHP软件 PHP是一种脚本语言,执行PHP脚本后向浏览器返回纯HTML语言(即后台将.php文件的执行结果以纯HTML的形式返回到前端) ---------------- ...

  6. MVC学习-http://www.w3school.com.cn/

    连接字符串: <add name="MovieDBContext" connectionString="Data Source=|DataDirectory|\Mo ...

  7. Xml的一些基本概念(摘抄自w3school.com.cn)

    一个Xml的文档示例: 点击查看代码 <?xml version="1.0" encoding="ISO-8859-1"?> <note> ...

  8. js基础篇——变量

    a.变量类型 变量类型 构造函数 举例 类型检测typeof 字符串 function String() var t = "chua"; var m = new String(&q ...

  9. javascirpt对象运用与JS变量

    abcdefghijklmnopqrstuvwyz String 对象方法 charAt() 方法可返回指定位置的字符.stringObject.charAt(index)(index从0开始)[ht ...

随机推荐

  1. 安装python模块

    要想在python中使用import的一些模块,前提是要安装这些模块. 可以使用pip来导入模块. 打开终端,输入命令: sudo easy_install pip 安装好pip后,就可以使用pip来 ...

  2. paip.c++ qt messagebox用法

    paip.c++ qt messagebox用法 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog.csdn.net ...

  3. NAND FLASH

    NAND Flash 以Micron公司的MT29F2G08为例介绍NAND Flash原理和使用. 1. 概述 MT29F2G08使用一个高度复用的8-bit总线(I/O[7:0])来数据传输.地址 ...

  4. AlarmManager类的应用(实现闹钟功能)

    1.AlarmManager,顾名思义,就是“提醒”,是Android中常用的一种系统级别的提示服务,可以实现从指定时间开始,以一个固定的间隔时间执行某项操作,所以常常与广播(Broadcast)连用 ...

  5. SQL Server 中的跨库视图

    SQL Server 中的跨库视图 在一个SQL中,有多个数据库,A.B.C,在使用C为连接库中,现在要查询A中的表T1. 那么,在C中建创视图(A_T1). SELECT *FROM A.dbo.T ...

  6. mssql字符串分割后的值,把表中不存在的插入表中

    字符串分割后的值,把表中不存在的插入表中 --供大家参考 使用场景,自行思考…… --创建表tb1 Create table tb1 ( cola int, colb ) ) --插入数据 inser ...

  7. IE7.JS解决IE兼容性问题方法

    转自:http://code.google.com/p/ie7-js/ 使IE5,IE6兼容到IE7模式(推荐) <!--[if lt IE 7]> <script src=&quo ...

  8. 深刻理解一句js

    最近有点小懒,不想写东西,也不想看东西,看东西还老跑神,这是肿么了呢? 盯着显示器某一刻能把它看透,就是不想挪下眼睛 无意中看到了这行代码 [].forEach.call($$("*&quo ...

  9. mysql数据库指令导入导出

    mysql数据库导出使用  /mysql/bin/mysqldump指令 数据库导出 导出指令: [mysql安装目录]/bin/mysqldump -u[username] -p[password] ...

  10. 文件保护DEP

    文件保护DEP数据执行保护(DEP)引起的电脑故障一例 症状:双击桌面上的“我的电脑”.“我的文档”等,explorer.exe重新起动,反复如此,简单说就是“我的电脑”打不开,一双击桌面上就啥都没有 ...