PHP条记
/ 定界符 /herodoc - 功能同双引号,能解析
$str = <<<AAA

字符串内容
AAA
nowdoc - 功能同单引号,不能解析
只在开始位置有单引号
$str = <<<'AAA'
字符串内容
AAA;
/ 字符串的利用 /可将字符串当作一个字符的凑集来利用,可独立访问每个字符。仅适用于单字节字符(字母、数字、半角标点符号),像中文等不可用
$str = \公众abcd\公众;
echo $str[3]; // d
echo $str{0}; // a
/ 【类型操作函数】 ///获取/设置类型
gettype($var) //获取变量的数据类型
settype($var, $type) //设置变量的数据类型
//类型判断is_int
is_float
is_null
is_string
is_resource
is_array
is_bool
is_object
is_numeric 检测变量是否为数字或数字字符串
//转换成指定的数据类型boolval
floatval
intval
strval
//逼迫转换类型(int)
(float)
(string)
(bool)
(array)
(object)
(unset) //转换为NULL
(binary) 转换和 b前缀转换 //转换成二进制
var_dump 打印变量的干系信息。
显示关于一个或多个表达式的构造信息,包括表达式的类型与值。
数组将递归展开值,通过缩进显示其构造。
var_export($var [,bool $return]) //输出或返回一个变量的字符串表示
$return:为true,则返回变量实行后的结果
print_r 打印关于变量的易于理解的信息
empty 检讨一个变量是否为空
isset 检测变量是否存在
/ 【流程掌握】 ///if语句的替代语法
if (条件判断) :
语句块;
elseif (条件判断) :
语句块;
else :
语句块;
endif;
//流程掌握的替代语法
在嵌入HTML时常用
将 { 换成 : , 将 } 换成 endif; 等
endif
endwhile
endfor
endforeach
endswitch
/ 【switch】 /
switch (条件) {
case 状态值1:
语句块;
[break;]
case 状态值2:
语句块;
[break;]
case 状态值3:
case 状态值4:
语句块;
[break;]
default:
语句块;
[break;]
}
switch是状态分支,分外的循环
先打算出状态值,再去与判断数作比较
break退出流程
/ 【for循环】 /for (条件初始化表达式; 条件判断表达式; 条件变革表达式) {
循环体
}
假设循环体被实行了N次,则
条件初始化表达式被实行1次
条件判断表达式被实行N+1次
条件变革表达式被实行N次
把稳:
1. 循环变量在for语句结束后还可以连续利用,值为第一次失落败的值
2. 循环变量在for循环体内可以利用
3. 任何条件表达式均可省略,但分号不能省略
a. 条件初始化表达式被省略时,循环变量被赋值为null,在与条件判断时,
进行类型转换后再比较。也可以在for语句外进行初始化。
b. 条件判断表达式被省略时,表示循环为真,进入去世循环
c. 条件变革表达式被省略时,可以在循环体内完成
4. 每个表达式均可由多条语句组成,每条语句之间利用逗号分割
如果条件判断表达式由多条语句组成,都会实行,但只有末了一条语句才作为判断条件
5. for只能遍历数值型索引下标数组
数组长度函数:count()
6. 该当将可以初始化的语句均放在条件初始化表达式内,这样可以省去很多实行次数
/ 【goto】5.3+ 版本 /
用来跳转到程序中的某一指定位置
该目标位置可以用目标名称 加上冒号来标记。
PHP中的goto有一定限定,只能在同一个文件和浸染域中跳转,
也便是说你无法跳出一个函数或类方法,也无法跳入到另一个函数。
你也无法跳入到任何循环或者switch构造中。
常见的用法是用来跳出循环或者switch,可以代替多层的break。
可以从循环(switch)中跳出来,但不能从外部跳转进去。而函数或类方法,向外向内均不可。
goto a;
echo 'Foo';
a:
echo 'Bar';
/ 【文件加载】 /require / include / require_once / include_once
文件载入只是载入目标文件内的代码并实行,与载入的文件类型无关
文件载入属于实行阶段,当实行到require等语句时,才载入该文件的代码,
编译并实行,然后回到require等语句位置连续实行下面的语句
【把稳】
在载入开始时,先退出PHP模式;
再载入目标文件代码,实行该代码;
结束时,再进入PHP模式。
require:处理失落败,产生 E_COMPILE_ERROR 缺点,脚本中止。
include:处理失落败,产生 E_WARNING 缺点,脚本连续实行。
#不建议利用require_once/include_once
/ 【相对路径】 /当前浏览器要求的哪个脚本,当前位置便是属于哪个脚本。
./file 和 file 都表示当前目录下的file文件
file情形(嵌套载入文件时):
如果当前目录没找到该文件就在代码文件所在目录中连续找。
如果当前目录找到有该文件,则不会再在代码文件所在目录去找也不会再加载。
__DIR__ 脚本文件所在目录
__FILE__ 脚本文件路径
include_path 加载文件查找目录
set_include_path() 设置include_path,可多个,用字符串作参数
该函数设置的path只针对该当前文件有效
该设置只针对查找未直接写文件路径办法有效
设置新的include_path会覆盖原来的
get_include_path() 获取当前include_path设置项,无参数
路径分隔符,在Windows下是分号,在Linux下是冒号
利用预定义常量 PATH_SEPARATOR 来获得当前的分隔符
如果直接写文件名:
1. include_path所设置的
2. 当前目录
3. 代码所在文件的目录
如果文件名前带有路径,则会直接根据路径查找,include_path直接被忽略