十、PHP常量和变量——用常量限制用户跳过某些文件(重要)

十.1常量在代码中定义、书写方式:

define(常量名,常量值)

注:1.常量值只能为标量

2.常量名可以小写,但是通常大写

3.常量名可以不加引号,但是通常加上引号

4.在字符串中调用常量的时候,必须在引号外面

5.常量名建议只用字母和下划线

系统的内置常量:

常量名

说明

LINE

当前所在的行

FILE

当前文件在服务器的路径

FUNCTIOIN

当前函数名

CLASS

当前类名

METHOD

当前成员方法名

PHP_OS

PHP运行的操作系统

PHP_VERSION

当前PHP的版本

TRAIT

Trait 的名字,php5.4新加

DIR

文件所在的目录

NAMESPACE

当前命名空间的名称(区分大小写)

十.2 defined函数来做安全机制

函数:defined(常量)

功能:向函数的括号后面传入常量,如果常量定义了就返回true,否则返回false!

十一、PHP常量之可变变量

定义了一个变量$my,并将$my这个变量的值设为字符串wo,

$my=’wo’;

然后定义变量$wo,将它的值设为‘我是中国人’,$$my就是可变变量,在已声明的变量$my前又加了一个变量符。

十二、PHP常量和变量之外部变量

外部变量:PHP的外部变量是PHP在使用过程中规定好的一些变量,这个变量的规定是这样规定的,就这样使用。

另外,我们总结一些外部变量,要求知识点的学习级别:了解含义,默写这个单词的写法和作用。

全局变量名

功能说明

$_COOKIE

得到会话控制中cookie传值

$_SESSION

得到会话控制中session的值

$_FILES

得到文件上传的结果

$_GET

得到get传值的结果

$_POST

得到post传值的结果

$_REQUEST

即能得到get的传值结果,也能得到Post传值的结果

十三、PHP常量和变量之环境变量

我们来了解一些常用的环境变量的键名和值对应的意思:

键名

含义

$_SERVER["REQUEST_METHOD"]

请求当前PHP页面的方法

$_SERVER["REQUEST_URI"]

请求的URI

$_SERVER["SERVER_SOFTWARE"]

用的是哪一种服务器

$_SERVER["REMOTE_ADDR"]

客户的IP地址

$_SERVER["SERVER_ADDR"]

当前服务器的IP地址

$_SERVER["SCRIPT_FILENAME"]

主前请求文件的路径

$_SERVER["HTTP_USER_AGENT"]

当前访问这个网址的电脑和浏览器的情况

$_SERVER["HTTP_REFERER"]

上级来源(用户从哪个地址进入当前网页的)

$_SERVER["REQUEST_TIME"]

当前的时间

十四、PHP常量和变量之变量引用

将变量$fo赋给变量$bar,再改变变量$bar的值。代码从上向下执行

现在在变量$fo 前面加上一个&,则两个变量的值是一样的!

也就是不论$fo或$bar的值如何发生变化,$fo变$bar也变,$bar发生变化,$fo也会发生变化

十五、PHP基础语法之算术运算

算数运算符,就是大家小学所学绝大多数知识:

符号

说明

举例

+

加号

$x + $y

-

减号

$x - $y

*

乘号,乘以

$x * $y

/

除号,除以

$x / $y

%

取余也叫取模、求模

$x % $y

十六、PHP基础语法之赋值运算

代码是从上到下运行的,因此赋值就可以从上到下反复赋值。

<?php

$x = 5;

$x = true;

$x = '爱你';

$x = 12.888;

echo $x;

?>

那么PHP的赋值运算符还有几个:

符号

举例

等价式

+=

$x += $y

$x = $x + $y

-=

$x -= $y

$x = $x - $y

*=

$x *= $y

$x = $x * $y

/=

$x /= $y

$x = $x / $y

%=

$x %= $y

$x = $x % $y

.=

$x .= $y

$x = $x . $y

 

十七、PHP基础语法之自加自减

符号

说明

$x++

先赋值后加

$x--

先赋值后减

++$x

先加后赋值

--$x

先减后赋值

十八、PHP基础语法之比较运算

说明

符号

大于

>

小于

<

大于等于

小于等于

不等于

等于

=

不过在在我们PHP里面多出了一种运算符:

说明

符号

大于

>

小于

<

大于等于

>=

小于等于

<=

不等于

!=

等于

==(赋值是=号,所以==规定为等于)

全等(判断类型等于)

===

全不等(判断类型不等于)

!==

全等号=== 和 等于号==的区别是:等于号不判断两个数的类型,判断大小,而全等号不仅判断大小,也判断类型!

十九、PHP基础语法之逻辑运算

逻辑异或,如果$x和$y相同则为false,不相同则为true。

举例

说明

详细说明

$x and $y

逻辑与(并且关系)

$x 和$y 为真则返回真

$x && $y

同上

同上

$x or $y

逻辑或

$x,$y均为false时为假,其他情况全为真

$a||$b

同上

同上

!$x

逻辑非

取反,即true变为false,false变为true

$x xor $y

逻辑异或

相同取false,相异为true

短路:

逻辑与:如果前面第一个条件为false了,后面就可以不用执行了。

用代码表示:if($x && $y) 如果$x已经为false了,后面的$y 就没有执行必要了。

逻辑或:前面第一个条件为true了,后面就不用执行了。

用代码表示:if($x || $y) 如果$x已经为true了,后面的$y 就没有执行必要了。

二十、PHP基础语法之三元运算符和其他运算符

符号

说明

$x? 真代码段:假代码段

判断是否为真假 ? 真情况 : 假情况;

``(反引号)

反引号中间插代命令,执行系统命令,等价于shell_exec函数

@

单行抑制错误,把这一行的错误不让它显示出来了,效率低不建议使用

=>

数组下标访问符

->

对象访问符

instanceof

判断某个对象是否来自某个类,如果是的返回true,如果不是返回false

三元运算符,相当于是if...else结构。不过三元运算符的写法更加简洁,语法格式如下:

$x? 真代码段(只能写一句代码):假代码段(只能写一句代码);

对象访问符和instanceof

回顾PHP:第一章:PHP基础语法(2)的更多相关文章

  1. web前端学习python之第一章_基础语法(二)

    web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...

  2. web前端学习python之第一章_基础语法(一)

    web前端学习python之第一章_基础语法(一) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...

  3. 第一章 –– Java基础语法

    第一章 –– Java基础语法 span::selection, .CodeMirror-line > span > span::selection { background: #d7d4 ...

  4. 第一章JSP基础语法

    jsp页面元素构成 jsp页面组成部分有:指令,注释,静态内容,表达式,小脚本,声明. jsp指令 page指令:通常位于jsp页面的顶端,同一个页面可以有多个page指令 include指令:将一个 ...

  5. go基础系列 第一章 go基础语法

    0.前言 1. go定义变量的几种方式 2. go内建变量类型 3. 常量的定义 4. go枚举 5. go的if语句 零. go语言的换行 go语言对换行很有讲究, 如果想换行,必须有一个逗号, 否 ...

  6. java面向对象编程——第二章 java基础语法

    第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...

  7. 第一章 jQuery基础

    第一章jQuery基础 一.jQuert简介 1.什么是jQuery jQuery是javaScript的程序库之一,它是javaScript对象和实用函数的封装. jQuery是继Prototype ...

  8. python第一章计算机基础

    第一章 计算机基础 1.1 硬件 计算机基本的硬件由:CPU / 内存 / 主板 / 硬盘 / 网卡 / 显卡 / 显示器 等组成,只有硬件但硬件之间无法进行交流和通信. 1.2 操作系统 操作系统用 ...

  9. 《零成本实现Web自动化测试--基于Selenium》第一章 自动化测试基础

    第一篇 Selenium 和WebDriver工具篇 第一章 自动化测试基础 1.1    初识自动化测试 自动化测试有两种常见方式 1.1.1 代码驱动测试,又叫测试驱动开发(TDD) 1.1.2 ...

  10. [Python笔记][第一章Python基础]

    2016/1/27学习内容 第一章 Python基础 Python内置函数 见Python内置函数.md del命令 显式删除操作,列表中也可以使用. 基本输入输出 input() 读入进来永远是字符 ...

随机推荐

  1. python中for循环中的循环变量

    废话不多说,代码伺候: for i in range(3): print("hello") print(i) 运行结果如下: 从上面的例子可以看出,for循环里面的循环变量i作用域 ...

  2. 【硬核教程】只需1秒—你也可以有自己的API文档

    Nothing is true. Everything is permitted. 写在前面 先聊聊为什么想到了要用Vuepress来代替原来写在Confluence上的文档. 大意是有个需要其他部门 ...

  3. 基于SLAM的移动机器人硬件设备参数

    1.移动机器人底盘 移动底盘有多大 长宽高:35*35*40cm 移动底盘有多重 17kg 底盘最大载重是多少 40kg 底盘最大速度是多少 1.2m/s 底盘的电池是多大 24V/7.8A 锂离子电 ...

  4. Java中获取MongoDB连接的方法

    首先是所需jar包,Maven中的配置如下: <dependency> <groupId>org.mongodb</groupId> <artifactId& ...

  5. 【原】tcp三次握手和四次挥手

  6. 疫情对国内5G发展的影响

    导读 2020年春节期间,“新型冠状病毒”引发了自SARS之后又一次全国性疫情,而世卫组织也将之列为国际关注的突发公共卫生事件,随后多国发布了针对中国的旅行警告和入境限制,从当前情况来看,疫情对中国各 ...

  7. vs2013设置不生成.sdf和ipch文件

    转载:https://blog.csdn.net/sinat_23338865/article/details/53393760 使用VS2013建立解决方案时,会生成SolutionName.sdf ...

  8. 【转载】五分钟让你彻底了解TDD、ATDD、BDD&RBE

    在目前比较流行的敏捷开发模式(如极限编程.Scrum方法等)中,推崇“测试驱动开发(Test Driven Development,TDD)”——测试在先.编码在后的开发实践.TDD有别于以往的“先编 ...

  9. [A]List`1[MyObject] cannot be cast to [B]List`1[MyObject]

    Description I have created a small class in a single ASP.NET 4.5 web forms page that is instantiated ...

  10. day04-MyBatis的缓存与懒加载

    为什么会用到缓存? 为了减少与数据库链接所消耗的时间,将查询到的内容放到内存中去,下次查询直接取用就ok了. 缓存的适应场景: 1.经常查询并且不经常改变的. 2.数据的正确与否对最终结果影响不大的. ...