数组unset以后 不会重建索引
unset($array[$key1]);php
标量类型:boolean integer float(double) string
复合类型:array object
特殊类型:resource null数据库
for foreach array_map array_walk whilejson
foreach遍历数组数组
$arr = array(1,2,3); foreach($arr as &$v){} foreach($arr as $v){ echo $v; }
如何杜绝foreach的引用隐患
最后一个元素的$value引用循环会会保留 建议unset删除
unset($v)缓存
1.HashTable bucket
2.HashTable用于保存整个数组须要的信息 Bucket保存具体内容服务器
判断int型变量a是奇数仍是偶数 a&1 = 0 偶数 a&1 = 1 奇数数据结构
1.序列化
Api接口通讯
数据缓存
数组数据持久化(保存到数据库中)app
2.序列化的方法
serialize()
json_encode()
var_exports($items,true)
xml
mcpack
protobuffer函数
+或者array_merge
array_merge :覆盖,相同数字键追加。
+运算符:补充,相同数字键忽略。post
判断key是否存在:array_key_exist() isset()
判断值是否存在: in_array() array_search()
依据键返回值: $items[$key]
依据值返回键: array_keys ($items,$value);
依据给定值进行模糊查找:preg_grep();
PHP函数preg_grep()返回一个数组,其中包括了$input数组中与给定的$pattern模式相匹配的单元。对于输入数组$input中的每一个元素,preg_grep()也只进行一次匹配
1.unset
2.array_slice()从数组中取出一段 array_slice(array,start,length,preserve)
3.array_splice把数组中的一部分去掉并用其它值取代 array_splice(array,start,length,array)
4.array_filter 过滤元素
5.array_shift 移除开头元素
6.array_pop 将最后一个元素弹出
count
is_array
print_r
explode
implode(join)
extract 从数组中将变量导入到当前的符号表
http_build_query 生成 URL-encode 以后的请求字符串
parse_str
数组遍历相关函数:如prev, next, current, end,reset, each等
数组排序相关:如sort, rsort, asort, arsort, ksort, krsort, uasort, uksort
数组查找相关: 如in_array, array_search, array_key_exists等
数组分割、合并相关: array_slice, array_splice, implode, array_chunk, array_combine等
数组交并差:如array_merge, array_diff, array_diff_, array_intersect, array_intersect_
做为stack/queue容器的数组: 如array_push, array_pop, array_shift
其余的数组操做:array_fill, array_flip, array_sum, array_reverse等
$GLOBALS — 引用全局做用域中可用的所有变量
$_SERVER — 服务器和执行环境信息
$_GET — HTTP GET 变量
$_POST — HTTP POST 变量
$_FILES — HTTP 文件上传变量
$_REQUEST — HTTP Request 变量
$_SESSION — Session 变量
$_ENV — 环境变量
$_COOKIE — HTTP Cookies
$_POST VS php://input
1.仅在取值为application/x-www-data-urlencoded和multipart/form-data时,php会将http请求body相应数据会填入到数组$_POST,填入到$_POST数组中的数据是进行urldecode()解析的结果。
2.只要Content-Type不为multipart/form-data, php://input会填入post数据。
3.仅当Content-Type为application/x-www-form-urlencoded且提交方法是POST方法时,$_POST数据与php://input数据才是一致的。
HashTable 根据关键字(Key Value) 直接访问在内存位置存储位置的一种数据