第三章 3.4 PHP基础
3.4.1 标量数据类型
------------------
定义:能够表示单项信息
分类:布尔型 整型 浮点型 字符串型
3.4.2复合数据类型
------------------
定义:将多个相同类型的项聚集起来,表示为一个实体
分类:数组 对象
3.4.3 数据类型强制转换
----------------------
类型转换操作符
(array)
(object)
(string)
(bool)或(boolean)
(int)或(integer)
(real)或(double)或(float)
3.6.3 PHP的超全局变量
---------------------
$_SERVER
$_SERVER['HTTP_REFERER'] 引导用户到达当前页面的URL
$_SERVER['REMOTE_ADDR'] 客户IP地址
$_SERVER['REQUEST_URI'] URI路径尾部分
$_SERVER['HTTP_HOST'] URI路径前部
$_ENV PHP解析器所在服务器环境有关信息
$_ENV['HOSTNAME'] 服务器主机名
$_ENV['SHELL'] 系统shell
$_SERVER['HTTP_USER_AGENT'] 客户的用户代理
$_FILES 包含$_POST上传的信息,二维数组,5个元素,下标1为上传文件input的name名,下标2为预定义下标
$_FILES['upload-name']['name'] 文件名 如image.jpg
$_FILES['upload-name']['type'] 文件类型
$_FILES['upload-name']['size'] 文件大小
$_FILES['upload-name']['tmp_name'] 此文件到达上传最终位置的临时名
$_FILES['upload-name']['eror'] 上传状态码,有5个值如下
UPLOAD_ERR_OK 文件上传成功
UPLOAD_ERR_INI_SIZE文件大小超出upload_max_filesize指定的最大值
UPLOAD_ERR_FROM_SIZE文件大小超出MAX_FILE_SIZE隐藏表单域参数
UPLOAD_ERR_PARTIAL文件只上传一部分
UPLOAD_ERR_NO_FILE上传表单中没有指定文件
$_GET 获取URL中的参数信息
$_POST 获取上传文件的信息
$_COOKIE 获取存储在cookie中的信息
$_SESSION 获取存储在会话中的信息
$_REQUEST $_GET、$_POST、$_COOKIE的集合
$GLOBALS 全局变量的集合,包含全局作用域的所有变量
3.6.4 变量的变量
----------------
$a = 'b';
$$a = '123';
echo $b[或$aa];
输出123
3.7 常量
--------
define(name,value[,case_insensitive])
可选参数:是否区分大小写 true|false
规则:
1.没有$符号
2.一旦定义常量,不能重新定义或取消
3.常量是全局的
3.9.2 转义序列
--------------
\n 换行
\r 回车
\t 水平制表符
\\
\$
\"
\'
\[0-7]{1,3} 八进制记法
\x[0-9A-Fa-f]{1,2} 十六进制记法
3.9.5 heredoc
输出大量文本
1.开始结束标识符相同
2.开始标识符前有3个左尖括号:<<<
3.语法与双引号类似
4.结束标识符必须在一行开始处
例:
$a = '123';
echo << $a
heredoc;
3.10 控制结构
break 结束循环(相当于js里的return false)
continue 结束本次循环,开始下一次循环
goto 直接跳到一个循环或构造之外的某个特定位置
例:
if(true){
goto ywc;
}
ywc:
echo '123';
输出 123;
第四章 函数
===========
4.1 调用函数
------------
MATH函数
--------
【弦】
cos()
定义:
返回一个数的余弦。
语法:
cos(x)
参数:
x 必须。数字。
说明:
cos()返回参数x的余弦值,参数x的单位为弧度。
注意:
cos()返回的数值在-1和1之间。
相似: [sin()正弦 tan()正切]
【反弦】
acos()
定义:
返回一个数的反余弦。
语法:
acos(x)
参数:
x 必须。数字。
说明:
acos()返回参数x的反余弦值,参数x的单位为弧度。a==cos(acos(a)) 。如果为-1,则返回 PI 的值。
注意:
acos()返回的数值在-1和1之间。
相似:
[asin()反正弦 atan()反正切]
【两个值的反正切弦】
atan2()
定义:
两个参数的反正切
说明:
x,y的符号用来确定象限。结果为弧度,值在-PI和PI之间(包含-PI和PI)
【双曲弦】
cosh()
定义:
返回一个数的双曲余弦值
说明: cosh(x) = [e^x + e^(-x)]/2
相似:
[sinh()双曲正弦 tanh()双曲正切]
【幂次方】
pow()
定义:
指数表达式
语法:
pow(x,y)
返回值:
x的y次方幂
说明: x为底数,y为指数
相似:
exp()
返回以e为底,参数为指数的值
【对数】
log()
定义:
返回一个数(>=1)的对数值
语法: log(N [,a])
参数:
N为要求的对数值的数。a为底,不选则以e为底,即lnN
返回值:浮点值
说明:
数学对数,a^x=N <=> log(a)(N) (a>0,a!=1,N>0)
相似:
log10()
返回以10为底的对数
log1p(N)
返回log(1+N)的对数
expm1()
【绝对值】
abs()
定义:
返回一个数的绝对值。
语法:
abs(x)
参数:
x 必须。数字。
说明:
cos()返回参数x的绝对值。
【进制转换】
base_convert()
定义: 在任意进制之间转换数字
语法: base_convert(number,frombase,tobase)
参数: 三个参数都为必须。number,原始值;frombase原始进制,tobase要转换的进制
说明:
返回一个字符串。frombase和tobase在2-36之间(包括2和36)。
高于进制的数字有字母a-z表示,分别为10-35。
bindec()
定义: 二进制转十进制
语法: bindec(string)
参数: 必须。规定要转换的二进制数。
说明:
返回string参数所表示的二进制数的十进制的等价值。
转换成的十进制数为整型。
能转换的最大二进制数为32个1,返回值为2147483647。超过最大数值返回浮点型。
相似:
$int octdec($str) 八转十
2147483647 => 36947879.
$int hexdec($str) 十六转十 7fffffff => 2147483647
$str decbin($int) 十转二
4294967295 => 32个1.
$str decoct($str) 十转八
4294967295 => 37777777777
$str dechex($str) 十转十六 4294967295 => ffffffff
英文:
binary system 二进制
octonary 八进制的
decimal 十进制的
hexadecimal 十六进制的
【角度2弧度】
deg2rad()
定义:
把角度转换为弧度
语法:
$float deg2rad($float)
参数: 以角度为单位的浮点数
英文: degree
角度
radian
弧度
【取整】
ceil()
定义: 进一取整(向上取整)
语法:
ceil(float)
参数:
进一法取整的浮点数字
说明:
返回大于参数的最小整数
相似: [floor()向下取整 round()四舍五入]
【扩展】
echo,print,printf,sprintf区别
-----------------------------
1.echo
命令,无返回值,只能输出字符串
2.print函数
输出一个或多个字符串。
比 echo() 稍慢。
3.print_r
只能输出数组
4.printf函数
语法:printf(format,arg1,arg2,arg++)
定义:输出格式化的字符串。
用法:
arg1、arg2、arg++ 参数将被插入到主字符串中的百分号(%)符号处。
该函数是逐步执行的。在第一个 % 符号处,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推。
注释:如果 % 符号多于 arg 参数,则您必须使用占位符。占位符被插入到 % 符号之后,由数字和 "\$" 组成
参数
描述
format
必需。规定字符串以及如何格式化其中的变量。
可能的格式值:
%% - 返回一个百分号 %
%b - 二进制数
%c - ASCII 值对应的字符
%d - 包含正负号的十进制数(负数、0、正数)
%e - 使用小写的科学计数法(例如 1.2e+2)
%E - 使用大写的科学计数法(例如 1.2E+2)
%u - 不包含正负号的十进制数(大于等于 0)
%f - 浮点数(本地设置)
%F - 浮点数(非本地设置)
%g - 较短的 %e 和 %f
%G - 较短的 %E 和 %f
%o - 八进制数
%s - 字符串
%x - 十六进制数(小写字母)
%X - 十六进制数(大写字母)
附加的格式值。必需放置在 % 和字母之间(例如 %.2f):
+ (在数字前面加上 + 或 - 来定义数字的正负性。默认地,只有负数做标记,正数不做标记)
' (规定使用什么作为填充,默认是空格。它必须与宽度指定器一起使用。)
- (左调整变量值)
[0-9] (规定变量值的最小宽度)
.[0-9] (规定小数位数或最大字符串长度)
注释:如果使用多个上述的格式值,它们必须按照上面的顺序进行使用,不能打乱。
arg1
必需。规定插到 format 字符串中第一个 % 符号处的参数。
arg2
必需。规定插到 format 字符串中第二个 % 符号处的参数。
arg++
可选。规定插到 format 字符串中第三、四等等 % 符号处的参数。
%% - 返回一个百分号 %
%b - 二进制数
%c - ASCII 值对应的字符
%d - 包含正负号的十进制数(负数、0、正数)
%e - 使用小写的科学计数法(例如 1.2e+2)
%E - 使用大写的科学计数法(例如 1.2E+2)
%u - 不包含正负号的十进制数(大于等于 0)
%f - 浮点数(本地设置)
%F - 浮点数(非本地设置)
%g - 较短的 %e 和 %f
%G - 较短的 %E 和 %f
%o - 八进制数
%s - 字符串
%x - 十六进制数(小写字母)
%X - 十六进制数(大写字母)
附加的格式值。必需放置在 % 和字母之间(例如 %.2f):
+ (在数字前面加上 + 或 - 来定义数字的正负性。默认地,只有负数做标记,正数不做标记)
' (规定使用什么作为填充,默认是空格。它必须与宽度指定器一起使用。)
- (左调整变量值)
[0-9] (规定变量值的最小宽度)
.[0-9] (规定小数位数或最大字符串长度)
注释:如果使用多个上述的格式值,它们必须按照上面的顺序进行使用,不能打乱。
arg1
必需。规定插到 format 字符串中第一个 % 符号处的参数。
arg2
必需。规定插到 format 字符串中第二个 % 符号处的参数。
arg++
可选。规定插到 format 字符串中第三、四等等 % 符号处的参数。
5.sprintf函数
把格式化的字符串写入变量中。
返回格式化后的文字,必须赋值变量才可打印,其它同printf
单引号与双引号的区别
--------------------
单引号比双引号快。
双引号:编译器解析,再输出。
单引号:直接输出。