php数据操作

巴扎黑
巴扎黑 原创
2016-11-23 15:24:09 899浏览

最全的数组函数介绍:http://cn2.php.net/manual/zh/book.array.php,常用备忘。

声明:

$array = array("id" => 1, "name" => "duanyong");

得到所有键:

$key = array_keys($array);

得到所有值:

$values = array_values($array);

遍历值和值:

a. foreach ($array as $key => $value) {
echo $key . "\t" . $value;
}

b. while (list($key, $value) = each($array)) {
echo $key . "\t" . $value;
}

检索数据
in_array()与array_search(),指定第三个参数为true,那么会执行严格检查(如数组中有字符串的1,而查找却用数字1,在没有指定第三个参数会返回true,否则false)。
in_array("duanyong", array("aaaa", "bbbb", "duanyong")); //检查字符串duanyong是否存在于数组中
array_search("duanyong", array("id" => "1", "sex" => 1, "name" => "duanyong"), true); //查找到值后返回键,否则返回false

检查索引是否存在
$array = array("name" => null);
isset($array["name"]); //return false
array_key_exists("name", $array); //return true

数组指针操作

要特别注意地是指针如果已经移到数据下标外,需要用reset将数组指针复位(置于第一个元素)才可以继续操作,否则会出现意外。
current($array); //返回当前元素
next($array); //返回下一个元素,没有返回false
prev($array); //返回上一个元素,没有返回false
end($array); //返回最后一个元素
reset($array); //将指针置于第一个元素上

数组排序
排序的类型:
• SORT_REGULAR - 正常比较单元(不改变类型)
• SORT_NUMERIC - 单元被作为数字来比较
• SORT_STRING - 单元被作为字符串来比较
• SORT_LOCALE_STRING - 根据当前的区域(locale)设置来把单元当作字符串比较。PHP 4.4.0 和 5.0.2 新加。在 PHP 6 之前,使用了系统的区域设置,可以用 setlocale() 来改变。自 PHP 6 起,必须用 i18n_loc_set_default() 函数。

对数据按值排序,保持键值关系
asort,arsort


对数据按键排序,保持键值关系
ksort,krsort


对数据排序同时抛弃键,生成新的数据索引
sort,resort


按用户规则排序,usort会删除原有索引,uksort和uasort会保持原有索引
usort,uksort,uasort


数组过滤
array_filter() 如果不指定过滤函数会返回元素布尔值为true的元素


声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
上一条:收藏PHP常用函数 下一条:预定义变量 PHP