回顾PHP:第一章:PHP基础语法(2)
十、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)的更多相关文章
- web前端学习python之第一章_基础语法(二)
web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- web前端学习python之第一章_基础语法(一)
web前端学习python之第一章_基础语法(一) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- 第一章 –– Java基础语法
第一章 –– Java基础语法 span::selection, .CodeMirror-line > span > span::selection { background: #d7d4 ...
- 第一章JSP基础语法
jsp页面元素构成 jsp页面组成部分有:指令,注释,静态内容,表达式,小脚本,声明. jsp指令 page指令:通常位于jsp页面的顶端,同一个页面可以有多个page指令 include指令:将一个 ...
- go基础系列 第一章 go基础语法
0.前言 1. go定义变量的几种方式 2. go内建变量类型 3. 常量的定义 4. go枚举 5. go的if语句 零. go语言的换行 go语言对换行很有讲究, 如果想换行,必须有一个逗号, 否 ...
- java面向对象编程——第二章 java基础语法
第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...
- 第一章 jQuery基础
第一章jQuery基础 一.jQuert简介 1.什么是jQuery jQuery是javaScript的程序库之一,它是javaScript对象和实用函数的封装. jQuery是继Prototype ...
- python第一章计算机基础
第一章 计算机基础 1.1 硬件 计算机基本的硬件由:CPU / 内存 / 主板 / 硬盘 / 网卡 / 显卡 / 显示器 等组成,只有硬件但硬件之间无法进行交流和通信. 1.2 操作系统 操作系统用 ...
- 《零成本实现Web自动化测试--基于Selenium》第一章 自动化测试基础
第一篇 Selenium 和WebDriver工具篇 第一章 自动化测试基础 1.1 初识自动化测试 自动化测试有两种常见方式 1.1.1 代码驱动测试,又叫测试驱动开发(TDD) 1.1.2 ...
- [Python笔记][第一章Python基础]
2016/1/27学习内容 第一章 Python基础 Python内置函数 见Python内置函数.md del命令 显式删除操作,列表中也可以使用. 基本输入输出 input() 读入进来永远是字符 ...
随机推荐
- php 用mysqli的json_encode()转换出来 全是对象的问题
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/9/6 0006 * Time: 15:33 */ //查 ...
- ASP.NET Core搭建多层网站架构【8.1-使用ViewModel注解验证】
2020/01/29, ASP.NET Core 3.1, VS2019 摘要:基于ASP.NET Core 3.1 WebApi搭建后端多层网站架构[8.1-使用ViewModel注解验证] 使用V ...
- agc026F Lotus Leaves
题目链接 题目大意 一个n*m的网格上有一些点,一个点可以跳到与其同一行或同一列的点上.给定起点和终点. 求要使起点不能跳到终点,最少撤走几个点. \(n,m\leq 100\) 解题思路 考虑将能够 ...
- 跨域-CORS
跨域:是浏览器为了安全而做出的限制策略 浏览器请求必须遵循同源策略:同域名,同端口,同协议 cors跨域- 服务器端设置,前端直接调用 说明:后台允许前端某个站点进行访问 后台设置 Access-Co ...
- Mybatic逆向工程的使用
前言:利用别人的方法.知识.经历或精神成为你自己,不思考不实践不总结不反馈,就不会变成你的. 转载必须表明出处:https://www.cnblogs.com/fby698/p/9463831.htm ...
- 【代码审计】VAuditDemo 后台登录功能验证码绕过
在 admin/logCheck.php中 $_POST['user']和$_POST['pass'] 未经过任何过滤或者编码处理就传入到$query中,可能存在万能密码绕过机制 但是$pass经过了 ...
- Nexus-配置vPC 实验三
配置EvPC(增强的vPC),下面两个FEX可以同时被两个N5K管理.注意:FEX只支持静态的Channel-group(mode on) N5K-1配置:配置FEXN5K-1(config)#fea ...
- iOS 开发之应用内弹出 App Store 应用界面
在APP内给其他APP做推广,经常用到在应用内弹出应用的APP #import <StoreKit/SKStoreProductViewController.h> 设置代理:<SKS ...
- C/C++网络编程8——多进程服务器端之销毁僵尸进程
上一节提到,当子进程执行结束,父进程还在执行,在父进程结束之前子进程会成为僵尸进程,那么怎么销毁僵尸进程呢?父进程主动接收子进程的返回值. 销毁僵尸进程的方法: 1:使用wait函数 2:使用wait ...
- Write-up-Violator
关于 下载地址:点我 Flag:/root/flag.txt 哔哩哔哩:视频 信息收集 网卡:虚拟机vmnet8 ➜ ~ ip addr show dev vmnet8 5: vmnet8: < ...