PHP 数组基础知识小结

  php函数有很多,需要时查询api。

  

复制代码 代码如下:

  <?php

  /*

  #数组 没有限制大小:$arr[0]=1;$arr[1]=2; $arr=array("0","1");$list($num1,$num2)=$arr;

  array range(int low,int high[,int step])

  low最小数,high最高数,step步长

  int array_unshift(array array,mixed vari) 数组前面插入

  array_push 数组尾添加

  array_shift 数组头部删除

  array_pop 数组尾部删除

  #定位数组

  boolean in_array(mixed needle,array haystack,[,boolean strict])

  boolean array_key_exists(mixed key,array array) 搜索关键键

  array_search() 搜索关联数组值

  array_keys()返回数组,包含所搜索的的所有键

  array_values()返回数组所有值。

  #遍历数组

  mixed key(array array)

  current(array array) 获取当前数组值

  array each(array array) 返回当前键、值对

  next(array array) 指向下一个

  prev(array array) 移到前一个

  reset(array array)移到第一个

  end(array array)移到最后一个

  #向函数传递数组值

  boolean array_walk(array &array,callback function,[,mixed userdata])

  #确定数组的大小及唯一性

  integer count(array array[,int mode]) 类似sizeof()

  array array_count_values(array array) 分组统计每个值出现的次数

  array_unique() 删除重复值,保持唯一性

  #排序

  array_reverse()顺序逆置

  array_flip() 对换键与值

  void sort(array array[,int sort_flags])

  sort_flgs{[SORT_NUMBERIC数值排序],[SORT_REGULAR 按ASCII排序],[SORT_STRING]}

  asort()升序

  rsort()逆序

  arsort()逆序

  natsort()自然排序

  natcasesort()不区分大小写自然排序

  ksort()键值排序

  krsort()逆序键值排序

  void usort(array array,callback function name) 用户自定义排序

  #合并,拆分,结合,分解数组

  array_merge_recursive() 合并

  array_merge_combine() 追加

  array_merge()连接到新数组

  array_slice(array array,int offse[,int length]) 拆分

  array_intersect()、array_intersect_assoc()数组交集

  array_diff()、array_diff_assoc()差集

  array_rand()、shuffle()随机数组

  array_sum()求和

  array_chunk 分成多维数组

  */

  //创建0-20的偶数数组,2为步长

  $even=range(0,20,2);

  //打印数组

  print_r($even);

  //判断是否为数组

  printf("this number is an array:%s<br/>",(is_array($even)?"true":"false"));

  echo "<br>";

  //数组头部添加子项,并打印

  array_unshift($even,522,54);

  print_r($even);

  //定义一变量,然后在数组中搜索,存在时显示找到该变量。

  $sa=522;

  if(in_array($sa,$even)){

  echo "find it $sa";

  };

  echo "<br/>";

  //搜索数组关键键

  if(array_key_exists(4,$even)){

  echo $even[4]." exists.";

  }

  echo "<br/>";

  print_r(array_values($even));

  //遍历打印数组

  while($key=key($even)){

  echo "<br/>".$key;

  next($even);

  }

  //统计数组大小

  echo "<br/>";

  echo count($even);

  //排序

  echo "<br>";

  sort($even);

  print_r($even);

  ?>