蒦嗳伱 发表于 2018-12-12 08:56:16

你应该这个姿势学习PHP(2)

  1、循环数组有哪几种方式
  1)foreach(能够循环关联和索引数组以及对象)
  2)for(只能循环索引数组)
  3)list和each配合使用循环数组

$arr = ['a'=>1,'b'=>2];
while(list($key,$val) = each($arr)){
echo $key$,val
}
  2、is_array(),is_bool,is_int(),is_integer(),is_numeric(),is_string(),is_object(),is_null,is_file,is_dir,is_readable,is_uploaded_file,is_writeable,
  1)is_array() 检查一个变量是否是数组
  2)is_file() 检查是否是一个文件
  3)is_dir()检查是否是一个目录
  4)is_uploaded_file() 检查是否是通过http post过来
  5)is_readable() 检查是否可读
  3、count()
  1)计算数组的长度
  4、array_sum()、array_product()
  1)array_sum() 计算一个数组的和
  2)array_product() 计算数组的乘积
  5、array_count_values()
  1)计算数组中的值出现次数的和
  6、in_array() array_key_exists() array_search() key_exists()
  1)in_array('xxx',$arr) 判断某个字符是否在数组中,并返回false或者true
  2)array_key_exists('xxx',$arr) 判断一个键是否存在这个数组中
  3)array_search('xxx',$arr) 判断某个值是否在数组中并返回key
  7、array_values() array_keys() array_column()
  1)array_values($arr) 返回数组的值
  2)array_keys() 返回数组的所有键
  2)array_column($arr,'xxxx') 返回数组的某一个列的值
  8、array_filter() array_walk() array_walk_recursive() array_map()
  1)array_filter($arr,'function') 用一个回调函数过滤一个数组
  2)array_walk($arr,'function',[$param]) 用一个回调函数处理数组,并且可以使用一个其他值作为参数传递给函数
  3)array_walk_recursive($arr,'function',[$param]) 对一个数组进行递归的使用函数
  4)array_map($arr,funciont) 对数组的每个元素应用函数
  9、array_unique()
  1)对数组进行去重操作
  10、array_change_key_case()
  1)将数组的所有键名转换成小写
  11、range()
  1)range(0,n,step=步长)创建数组
  12、array_fill() array_fill_keys()
  1)array_fill(key_start,long,'xxx')用某个值填充数组
  2)array_fill_keys($arr,'xxx') 用某个值和当前数组结合产生一个以$arr为键,以xxx为值的新数组
  13、array_flip() array_reverse()
  1)array_flip()交换数组的建和值
  2)array_reverse($arr,) 反转数组,如果第二个参数为true将保留数组的原键
  14、array_pad()
  1)array_pad($arr,long,xxx) 填充数组到指定的长度
  15、array_rand() shuffle()
  1)array_rand($arr,2) 随机去除几个数组
  2)shuffle() 打乱数组
  应用场景:随机的或者数组的一个值
  16、array_shift() array_unshift() array_push() array_pop()
  1)array_shift($arr) 从头部弹出一个值,栈
  2)array_unshift($arr,) 入栈
  应用场景:模拟栈
  3)array_push($arr,) 从尾部插入一个值到数组中
  4)array_pop($arr) 从尾部弹出一个值
  应用场景:配合array_unshift 模拟队列
  18、array_merge() array_merge_recursive()
  1)array_merge() 合并两个数组,后者会覆盖前者键相同的值
  2)array_merge_recursive() 递归的合并两个数组,后者会覆盖前者键相同的值
  应用场景:框架里面两个配置文件的合并
  19、array_multisort(),sort (),rsort (),krsort (),ksort(),asort(),arsort()
  1)array_multisort($arr,SORT_ASC,$arr,SORT_DESC);
  对多个数组进行排序
  2)sort 数组升序
  3)rsort 数组降序
  4)krsort 使用键值对数组降序
  5)ksort 使用键值对数组进行升序
  6)asort 对数组进行升序排序并保持索引关系
  7)arsort 对数组进行降序排序并保持索引关系
  20、next prev rest end current
  1)next //将数组中指针向前移动一位
  2)prev //将数组内部指针倒回一位
  3)rest //将数组指针指向第一个单元
  4)end //将数组指针指向最后一个单元
  5)current //返回数组中的当前单元
  21、max() min()
  1)max() 取最大值
  2)min() 取最小值



页: [1]
查看完整版本: 你应该这个姿势学习PHP(2)