欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php数据操作

程序员文章站 2022-05-26 11:26:43
...
声明:

$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的元素

相关标签: php php数据操作