PHP

ECMAScript

变量命名规则

(相同点)

变量包含:字母、数字、下划线字符

变量只能以字母或下划线开头

变量不能以数字开头

变量名是区分大小写

变量包含:字母、数字、下划线字符

变量只能以字母或下划线开头

变量不能以数字开头

变量名是区分大小写

变量命名规则

(不同点)

关键字和函数名不区分大小写

变量不需要提前定义,使用时直接赋值即可

变量前必须要加一个美元符号($)

关键字和函数名区分大小写

变量需要提前定义,使用时直接赋值即可

变量作用域

全局变量:只能在函数外部使用
局部变量:只能在函数内部使用
全局变量:任何地方(函数内外)都可以使用
局部变量:只能在函数内部使用

系统预定义变量

1. $_POST:接收用户表单post方式提交的所有数据

2. $_GET:接收用户表单get方式提交的所有数据

3. $_REQUEST:接收用户get和post方式提交的数据,还有cookie数据

4. $_FILES:接收用户上传的文件信息

5. $_SESSION:存放session数据(存放在服务器)

6. $_COOKIE:存放cookie数据(存放在浏览器)

7. $GLOBALS:全局变量

8. $_SERVER:保存服务器信息

9. $_ENV:保存系统环境信息

自定义变量

定义常量 define(name,value[flag])

常量不能修改或删除

[flag]为可选,默认false,不区分大小写

define("DB_HOST","localhost");

无正式规范定义常量语法

采用单词大写的规范命名且不改变

var PI = 3.14;

系统预定义变量

1. PHP_OS:操作系统内核

2. PHP_VERSION:当前PHP的版本

3. PHP_INT_SIZE:int类型所占的字节数

4. PHP_INT_MAX:int类型能表示的最大值

魔术常量:可以自动变化的常量

1. __FILE__:当前脚本的文件路径(绝对路径)

2. __LINE__:当前所在的行数

3. __DIR__:当前脚本所在的目录(PHP4以后才有)

4. __FUNCTION__:当前函数的名字

5. __METHOD__:当前方法的名字(类中的函数)

1. Infinity;                 /* 无穷大 */

2. NaN;                   /* 非数字值 */

3. Number.MAX_VALUE;   /* 最大数值(JS 可以表示的) */

4. Number.MIN_VALUE;    /* 最小数值(JS 可以表示的) */

5. Number.NaN;               /* 非数字值 */

6. Number.NEGATIVE_INFINITY;  /* 负无穷大 */

7. Number.POSITIVE_INFINITY;  /* 无穷大 */

PHP中注意事项:

内存空间划分

栈,堆,代码区,变量区(变量,常量,静态变量)

变量与常量的内存原理图

值传递与地址传递

PHP脚本执行结束后内存是如何处理的?

1. 什么叫做PHP脚本执行结束?

指的是当PHP引擎将用户请求的某个PHP脚本文件(index.php)的最后一行PHP代码执行完毕,称之为脚本执行结束。

2. 脚本结束后内存如何处理?

PHP脚本所占用的所有内存都会被释放,被操作系统回收。

注意:

1. 标签可以没有结束符号,如果在PHP代码之后没有任何其他非PHP代码,那么该结束标签可以没有

有结束标签:如果在结束标签之后还有额外的空格或者空行,PHP在解析的时候,会将该空格当做html的空格或者空行输出,会浪费带宽

如果PHP是嵌入到html代码中,那么建议最好使用结束标签,最后一个PHP结束标签可以没有(后面没有其他代码)

一般情况下,可以没有结束标签

练习:

交换变量值,不使用第三个变量交换两个变量的值

<?php 

    $a = 'php';
$b = 'javascript';
list($a,$b) = array($b,$a);
echo $a.'-'.$b; // javascript - php ?>

PHP与ECMAScript_1_变量与常量的更多相关文章

  1. Java程序,基本数据类型、、数据类型转换、变量和常量、常用运算符

    一.基本数据类型 整数类型:byte.short. int(常用).long(较常用)     定义某个变量          int  a=10: 浮点类型(小数):float.double(常用) ...

  2. PHP中的变量与常量详解

    几乎所有的编程语言都会涉及到变量和常量这两个概念,PHP也不例外.本节将介绍PHP语言中的变量和常量的应用方法. 一.什么是变量和常量 在程序执行的过程中,变量存储的值可以随时改变,而常量存储的值是不 ...

  3. Java 静态变量,常量和方法

    static 关键字 例如:在球类中使用PI这个常量,可能除了本类需要这个常量之外,在另外一个圆类中也需要使用这个常量.这时没有必要 在两个类中同时创建PI这个常量,因为这样系统会将这两个不在同一个类 ...

  4. [.net 面向对象编程基础] (5) 基础中的基础——变量和常量

    [.net面向对象编程基础]  (5) 基础中的基础——变量和常量 1.常量:在编译时其值能够确定,并且程序运行过程中值不发生变化的量. 通俗来说,就是定义一个不能改变值的量.既然不能变动值,那就必须 ...

  5. iOS开发Swift篇—(二)变量和常量

    iOS开发Swift篇—(二)变量和常量 一.语言的性能 (1)根据WWDC的展示 在进行复杂对象排序时Objective-C的性能是Python的2.8倍,Swift的性能是Python的3.9倍 ...

  6. php标记,变量,常量

    php标记 语法:有4种书写格式 1.<?php ... ?>  强烈推荐使用. 如果当前 php的代码段,是整个文档的最后一段,可以省略结束标记?(建议省略) 每句语句都要以分号;结束. ...

  7. Swift学习笔记--变量与常量

    1.Swift是一门强类型语言,不能为变量赋予其自身数据类型之外的值: 2.声明变量使用var关键字,声明常量使用let关键字: 3.声明变量或常量时没有对其指定类型且赋予了初值,则编译器会自动推断常 ...

  8. Oracle基础 PL-SQL编程基础(1) 变量和常量

    一.什么是PL-SQL PL-SQL是结合了Oracle过程语言和结构化查询语言(SQL)的一种扩展语言.具体来说,PL-SQL就是在普通的SQL语句的基础上增加了编程语言的特点,将数据操作和查询语句 ...

  9. 李洪强iOS开发Swift篇—02_变量和常量

    李洪强iOS开发Swift篇—02_变量和常量 一.语言的性能 (1)根据WWDC的展示 在进行复杂对象排序时Objective-C的性能是Python的2.8倍,Swift的性能是Python的3. ...

随机推荐

  1. 对shell脚本进行加密

    用shell脚本对系统进行自动化维护,简单,便捷而且可移植性好.但shell脚本是可读写的,很有可能会泄露敏感信息,如用户名,密码,路径,IP等.同样,在shell脚本运行时会也泄露敏感信息.请问如何 ...

  2. Java逆序输出整数

    题目要求:编写方法reverseDigit,将一个整数作为参数,并反向返回该数字.例如reverseDigit(123)的值是321.同时编写程序测试此方法. 说明:10的倍数的逆序,均以实际结果为准 ...

  3. 深入解析Hyperledger Fabric启动的全过程

    在这篇文章中,使用fabric-samples/first-network中的文件进行fabric网络(solo类型的网络)启动全过程的解析.如有错误欢迎批评指正. 至于Fabric网络的搭建这里不再 ...

  4. linux运维人员常用150个命令汇总

    命令 功能说明 线上查询及帮助命令(2个) man 查看命令帮助,命令的词典,更复杂的还有info,但不常用. help 查看Linux内置命令的帮助,比如cd命令. 文件和目录操作命令(18个) l ...

  5. 教妹子用IDEA创建web应用,部署到Tomcat服务器

    自从上一篇原创发表之后,粉丝反应热烈.主要分两派,一派关注技术的,觉得看了那么多的公众号文章,终于找到一篇能看懂的了,于是沾沾自喜.另一派是关注妹子的,感叹自己空有一身绝技,公司里却无妹子可教,大喊可 ...

  6. 微信小程序商城(Java版)

    体验 后台演示地址(账号:admin 密码:admin) 小程序体验如下: 技术选型 1 后端使用技术 1.1 springframework4.3.7.RELEASE 1.2 mybatis3.1. ...

  7. CSS3 入门级

    从刚开始学习的选择器总共有十三种: id class 标签 子代 后代 交集 并集 通配符 伪类 结构 属性 相邻 兄弟 (全当复习,如果有用的话那就正好) div[name=zhang]  这是属性 ...

  8. 基于STM32之UART串口通信协议(四)Printf发送

    一.前言 1.简介 前面在UART发送中已经讲解过如何调用HAL库的HAL_UART_Transmit函数来实现串口发送,而在调用这个函数来实现串口发送的话,但是在发送数据或者字符的时候,需要将数据或 ...

  9. HTML5新增的标签与属性

    一.关于DTD HTML5 不基于 SGML,所以不需要引用 DTD(HTML 4.01 基于 SGML) 二.HTML5结构标签 <header> 标记定义一个页面或一个区域的头部 &l ...

  10. Qt之股票组件-股票检索--支持预览框、鼠标、键盘操作

    目录 一.感慨一下 二.效果展示 三.搜索编辑框 1.编辑框 2.预览框 四.相关文章 原文链接:Qt之股票组件-股票检索--支持预览框.鼠标.键盘操作 一.感慨一下 之前做过一款炒股软件,个人觉着是 ...