1.常量
是在一个脚本周期中不能被改变的数据,常量的声明一般放在文件的开头一般常量保存,版本号,路径,数学计算中的圆周率
1)定义常量的两种方式
a)Define()
define('version',7.1);
echo version;//7.1;
b)Const
const PI = 3.14;
echo PI;
2)常量不允许重复定义,会报错
不影响代码的执行。
去除报错:@错误抑制符,可以屏蔽错误信息的提示;
2运算符
运算符的分类,按照功能分类;
l
算术运算符
1
)基本符号:
+
,
-
,
*
,
/
,
%
2
)操作数不能为
0
情况
除法中的分母,和求余数
整数和字符串相加,会自动找字符串最前面的数值进行计算:
l
赋值运算符
=
赋值运算符是把等号右边值,或者表达式的结果赋给左边的变量
l
比较运算符
比较运算符的结果返回是一个
bool
类型的
l
逻辑运算符
1)
逻辑与:
&&
T
rue
&& true-----true
True&&false----false
False&&false---false
False&&true---false
&&
运算只要有一个是假的,结果就是假的
2)
逻辑或:
||
只要有一个是真的,结果就是真的
3)
逻辑非:
!
!
true
---false
!false ----true
4
)逻辑运算符中的
短路现象
l
连接运算符
主要用于字符串的拼接
1)
连接符:
.
可以把两个字符串通过
.
运算符来进行拼接,左右都是拼接的值
例如:
‘
abc
’
.’def’
2)
自连接符:
.=
例如:
$a=
’abc’
$a.=’def’ ----‘abcdef’
把
.=
后边的字符串拼接到
$a
字符串的后边
l
自操作运算符
1)
自增运算符:
++
++
的含义就是自增,并且每次自增
1
例如:
$a=1;
$a++;
这时候
$a
就是
2,(先得到a值后算)
++$a;
这时候
$a
也是
2,(先计算再得到a值)
2)
自减运算符:
--
3
)自赋值运算符:
+=, -=, *=, /=, %=, .=
运算符分类(按照操作数的数目)
1)
单目运算符:操作的数值只有
1
个
++ --
+= -= *= /= %= .=
2)
双目运算符:操作数只有
2
个
3)
三目运算符
:又称条件运算符.a>b?a:b;
3.流程控制
1)顺序结构
代码按照先后顺序来执行,从上至下;
2)分支结构
a.if语句
if判断流程
b.switch语句
switch控制流程
3)循环结构
a.for循环
for(
初始值
,
条件
,
数据改变
)
{
//
循环体
}
b.while循环
while(
条件
)
{
//
循环体
//
条件数据的变化
}
c.do while循环语句
do
{
循环体
} while(
条件
);
不管条件是否满足,都会至少执行一次循环体;
4.函数
1. 函数的概念
就是完成特定功能的代码集合;
a. 函数的定义
function
函数的名字
([
参数
1,
参数
2....])
{
//
函数体
}
b.参数详解
函数调用放在前后都会解析掉。
关于形参,如果没有值会报错;
给了默认值则不会提示;
2.关于数据之间的传递
值传递:数值之间相互传递的时候,下面的10是a变量的值10的副本,两者之间相互不影响
想要跟随改变需要在前面加上一个&符号, $b = &$a;改变为引用传递;
函数形参的引用传递
想要改变info值,formation的值同样跟随改变,需要进行址传递(引用传递):在info形参变量中加个&符号
2.函数的返回值
函数的返回值使用到
return
关键字,把需要返回的信息,直接放在
return
后边就可以了
R
eturn
返回值只是返回到函数调用的地方
return
执行以后,函数调用结束,函数中的代码不再执行
return
语句用于结束函数
return语句用于返回数据
3.函数中变量的作用域
局部作用域,全局作用域
1.局部变量在全局中使用:报错
解决方案:添加global $name;可以在外部打印出来;
2.函数内部使用外部的变量:
使用$GLOBALS['name']来解决
局部变量
在函数中声明的变量就是局部变量
全局变量
在函数外部声明的变量就是全部变量,
PHP
中全局变量不能直接在函数中使用,如果使用
需要使用
$GLOBALS
数组 下标是全局变量的名字
来获得全局变量的值
超全局变量
PHP
内部系统提供的一些变量,可以在任何地方使用 不需要自己定义可以直接使用的
$_SESSION $_COOKIE $_GLOBALS
$_GET
$_POST $_SERVER
4.系统内置函数
a.
有关输出的函数:
sprintf()
---
和
C
语言比较相似
b.
有关时间的函数:
date(), time(), microtime()
date(),
输出一个格式化的时间
time
()
返回一个时间戳
(如果有时差问题,需要改apache版本下bin文件里的php.ini)使用的是欧洲的失去需要改成中国的
date.timezone = Europe/Paris ===>date.timezone =PRC;
M
icro
time()返回当前UNIX时间戳
echo microtime();//微秒数,//时间戳
计算代码执行时间:
c.
有关数学的函数:
max()
—
最大值
, min()
—
最小值
, rand()
—
随机值
, mt_rand()
—
更随机的函数
, round()---
四舍五入
,ceil()—
向上取整
, floor()
---
向下取整
,abs()—
绝对值
, sqrt()—
开方
, pow()—
求某个数的次方
,
d.
有关函数的函数:
function_exists(),
判断一个函数是否定义了
参数是函数的名字
func_get_arg(),
获得一个函数的参数,参数是传递的参数顺序
func_get_args(),
获取函数所有的参数
func_num_args()
获取函数参数的个数
5.文件包含
I
nclude
----
引入文件,同一个文件可以多次引入
include_once
---
引入文件,同一个文件只引入一次
require
----
引入文件,同一个文件可以多次引
require_once---
引入文件,同一个文件只引入一次
当引入一个不存在的文件
include
---
会继续执行后续的代码,
require
报一个严重性的错代码不再执行
一般引入文件会使用
include。
注意:引入文件的时候相对路径和绝对路径
都可以使用;