魔 术 常 量
__LINE__ 文件中的当前行号。
__FILE__ 文件的完整路径和文件名
__DIR__ 文件所在的目录
__FUNCTION__ 函数名称
__CLASS__ 类的名称
__TRAIT__ Trait 的名字
__METHOD__ 类的方法名
__NAMESPACE__ 当前命名空间的名称
https://www.php.net/manual/zh/language.constants.predefined.php 更多信息
超全局数组
$_SERVER['SERVER_ADDR'] 当前运行脚本所在的服务器的 IP 地址
$_SERVER['SERVER_NAME'] 当前运行脚本所在的服务器的主机名
$_SERVER['REQUEST_METHOD'] 访问页面使用的请求方法;例如,“GET”,
$_SERVER['REQUEST_TIME'] 请求开始时的时间戳
$_SERVER['QUERY_STRING'] ?后的字符串
$_SERVER['PATH_INFO'] 查询语句(query string)之前的路径信息
$_SERVER['HTTP_REFERER'] 引导用户代理到当前页的前一页的地址
$_SERVER['HTTP_USER_AGENT'] 当前请求头中 User-Agent: 项的内容
$_SERVER['REMOTE_ADDR'] 浏览当前页面的用户的 IP 地址
$_SERVER['REMOTE_HOST'] 浏览当前页面的用户的主机名
$_SERVER['SCRIPT_FILENAME'] 当前执行脚本的绝对路径
$_SERVER['REQUEST_URI'] URI 用来指定要访问的页面
https://www.php.net/reserved.variables.server 更多信息
检 查 判 断
is_array 检测变量是否是数组
in_array 检查数组中是否存在某个值
array_search 在数组中搜索给定的值,如果成功则返回首个相应的键名
array_key_exists / key_exists 检查数组里是否有指定的键名或索引
创 建 数 组
array / [ ] 新建一个数组
range 根据范围创建数组,包含指定的元素
compact 建立一个数组,包括变量名和它们的值
array_combine 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值
数 组 填 充
array_fill 用给定的值填充数组
array_fill_keys 使用指定的键和值填充数组
array_pad 以指定长度将一个值填充进数组
数 组 合 并
array_merge 合并一个或多个数组
+ 运算符 完全保留原有数组并将新数组附加到后面
array_merge_recursive 递归地合并一个或多个数组
数 组 计 算
array_sum 对数组中所有值求和
array_product 计算数组中所有值的乘积
array_reduce 用回调函数迭代地将数组简化为单一的值
比 较-差 集
array_diff 计算数组的差集(value)
array_udiff 用回调函数比较数据来计算数组的差集
array_diff_key 使用键名比较计算数组的差集(key)
array_diff_ukey 用回调函数对键名比较计算数组的差集
array_diff_assoc 带索引检查计算数组的差集(key-value)
array_diff_uassoc 用用户提供的回调函数做索引检查来计算数组的差集
array_udiff_assoc 带索引检查计算数组的差集,用回调函数比较数据
array_udiff_uassoc 带索引检查计算数组的差集,用回调函数比较数据和索引
比 较-交 集
array_intersect 计算数组的交集(value)
array_uintersect 计算数组的交集,用回调函数比较数据
array_intersect_key 使用键名比较计算数组的交集(key)
array_intersect_ukey 用回调函数比较键名来计算数组的交集
array_intersect_assoc 带索引检查计算数组的交集(key-value)
array_intersect_uassoc 带索引检查计算数组的交集,用回调函数比较索引
array_udiff_assoc 带索引检查计算数组的差集,用回调函数比较数据
array_udiff_uassoc 带索引检查计算数组的差集,用回调函数比较数据和索引
数 组 - 栈
array_push 将一个或多个单元压入数组的末尾(入栈)
array_pop 弹出数组最后一个单元(出栈)
array_unshift 在数组开头插入一个或多个单元
array_shift 将数组开头的单元移出数组
数 组 指 针
current / pos 返回数组中的当前单元
reset 将数组的内部指针指向第一个单元
end 将数组的内部指针指向最后一个单元
prev 将数组的内部指针倒回一位
next 将数组中的内部指针向前移动一位
list 把数组中的值赋给一组变量
each 返回数组中当前的键/值对并将数组指针向前移动一步
数 组 排 序
shuffle 打乱数组
array_multisort — 对多个数组或多维数组进行排序
rsort 对数组逆向排序(索引重组)
sort 对数组排序(索引重组)
usort 使用用户自定义的比较函数对数组中的值进行排序
krsort 对数组按照键名逆向排序
ksort 对数组按照键名排序
uksort 使用用户自定义的比较函数对数组中的键名进行排序
arsort 对数组进行逆向排序并保持索引关系
asort 对数组进行排序并保持索引关系
uasort 使用用户自定义的比较函数对数组中的值进行排序并保持索引关联
natsort 用“自然排序”算法对数组排序(常见排序,如1,2,3,4)
natcasesort 用“自然排序”算法对数组进行不区分大小写字母的排序
数 组 替 换
array_replace 使用传递的数组替换第一个数组的元素
array_replace_recursive 使用传递的数组递归替换第一个数组的元素
array_slice 从数组中取出一段
array_splice 去掉数组中的某一部分并用其它值取代
其 他 操 作
count / sizeof 计算数组中的单元数目,或对象中的属性个数
array_unique 移除数组中重复的值
array_key_first 获取数组的第一个键
array_key_last 获取数组的最后一个键
array_keys 返回数组中部分的或所有的键名
array_change_key_case 将数组中的所有键名修改为全大写或小写
array_values 返回数组中所有的值
array_flip 交换数组中的键和值
array_count_values 统计数组中所有的值
array_chunk 将一个数组分割成多个
array_column 返回数组中指定的一列
array_filter 用回调函数过滤数组中的单元
array_map 为数组的每个元素应用回调函数
array_reverse 返回单元顺序相反的数组
array_walk 使用用户自定义函数对数组中的每个元素做回调处理
array_walk_recursive 对数组中的每个成员递归地应用用户函数
extract 从数组中将变量导入到当前的符号表