<pre>
<?php
//数组转换,统计,相关函数
header("Content-Type:text/html;charset=utf-8");
//count();计算数组的单元数目。别名:sizeof();
//例:
/*$arr=array(2,4,6);
echo count($arr);//输出:3
*/ //array_change_key_case 返回字符串键名全为大写或是小写的数组。
/*原形:array array_flip ( array $trans )
功能:返回一个反转后的 array。例如 trans 中的键名变成了值,而 trans 中的值成了键名。
注意 trans 中的值需要能够作为合法的键名,例如需要是 integer 或者 string。
如果值的类型不对将发出一个警告,并且有问题的键/值对将不会反转。
如果同一个值出现了多次,则最后一个键名将作为它的值,所有其它的都丢失了。
*/ //默认是小写,加上CASE_UPPER全为大写。
/*$arr=array('First'=>1,'Second'=>2);
$arr2=array_change_key_case($arr,CASE_UPPER);
print_r($arr2);//输出数组$arr2,键名全是大写字母。
*/ //array_flip() 交换数组中的键和值。返回反转后的数组。
/*$a=array('First'=>1,'Second'=>2);
$b=array_flip($a);
print_r($b);*/
/*
输出:
Array
(
[1] => First
[2] => Second
)
*/ //array_column();返回数组中指定的一列
/*函数原形:array array_column ( array $input , mixed $column_key [, mixed $index_key ] )
array_column() 返回input数组中键值为column_key的列, 如果指定了可选参数index_key,那么input数组中的这一列的值将作为返回数组中对应值的键。
参数说明:
input 需要取出数组列的多维数组(或结果集)
column_key 需要返回值的列,它可以是索引数组的列索引,或者是关联数组的列的键。 也可以是NULL,此时将返回整个数组(配合index_key参数来重置数组键的时候,非常管用)
index_key 作为返回数组的索引/键的列,它可以是该列的整数索引,或者字符串键值。
返回值:从多维数组中返回单列数组*/ //例:提前老师的姓
/*$records = array(
array(
'id' => 2135,
'first_name' => '张',
'last_name' => '老师',
),
array(
'id' => 3245,
'first_name' => '王',
'last_name' => '老师',
),
array(
'id' => 5342,
'first_name' => '李',
'last_name' => '老师',
),
array(
'id' => 5623,
'first_name' => '赵',
'last_name' => '老师',
)
);
$first_name=array_column($records,'first_name');
print_r($first_name);*/
/*
输出:
Array
(
[0] => 张
[1] => 王
[2] => 李
[3] => 赵
)
*/
//用firt_name作为值,用id作为键,输出新的数组。
/*$first_name2=array_column($records,'first_name','id');
print_r($first_name2);*/
/*
输出:
Array
(
[2135] => 张
[3245] => 王
[5342] => 李
[5623] => 赵
)
*/ //array_combine()创建一个一个数组,用一个数组作为键,另一个数组作为值。
/*函数原形:array array_combine ( array $keys , array $values )
功能:返回一个 array,用来自 keys 数组的值作为键名,来自 values 数组的值作为相应的值。
注意:返回合并的 array,如果两个数组的单元数不同则返回 FALSE。
*/
//例:
/*$arr1=array('羊','狗','鱼');
$arr2=array('草','肉','水');
$arr3=array_combine($arr1,$arr2);
print_r($arr3);*/
/*输出:
Array
(
[羊] => 草
[狗] => 肉
[鱼] => 水
)
*/ //array_count_values()统计数组中所有值出现的次数。
/*函数原形:array array_count_values ( array $input )
array_count_values() 返回一个数组,该数组用 input 数组中的值作为键名,该值在 input 数组中出现的次数作为值*/
//例:
/*$arr=array('Hello','women','Hello','Hello','mon','women');
print_r(array_count_values($arr));*/
/*
输出:
Array
(
[Hello] => 3
[women] => 2
[mon] => 1
)
*/ //array_sum — 计算数组中所有值的和
/*原形:number array_sum ( array $array )
功能:将数组中的所有值的和以整数或浮点数的结果返回。
说明:如果数组的值不是数值型,会按强制转换原则进行转换。
代码示例:统计购物车中所有商品总价*/
/*$a=array(2,3,4,5);
$b=array_sum($a);
print_r($b);*/
//输出:14 //array_product 计算数组中所有元素的乘积
/*原形:number array_product ( array $array )
功能:array_product() 以整数或浮点数返回一个数组中所有值的乘积。
代码示例:本函数实用价值不强,了解即可
*/
/*$arr=range(1,5);
$b=array_product($arr);
print_r($b);//输出:120*/ //array_fill — 用给定的值填充创建数组
/*原形:array array_fill ( int $start_index , int $num , mixed $value )
功能:用 value 参数的值将一个数组填充 num 个条目,键名由 start_index 参数指定的开始。
参数说明:
如果 start_index 是负数, 那么返回的数组的第一个索引将会是 start_index ,而后面索引则从0开始。
插入元素的数量。 必须大于 0。
返回:填充后的数组,如果 num 少于一个,将会抛出 E_WARNING。 */ /*$a = array_fill(5, 6, 'banana');
$b = array_fill(-2, 4, 'pear');
print_r($a);
print_r($b);*/
/*
输出:
Array ( [5] => banana [6] => banana [7] => banana [8] => banana [9] => banana [10] => banana )
Array ( [-2] => pear [0] => pear [1] => pear [2] => pear )
*/ /*array_fill_keys — 使用指定的键和值填充数组。 了解即可
原形:array array_fill_keys ( array $keys , mixed $value )
使用 value 参数的值作为值,使用 keys 数组的值作为键来填充一个数组。
*/ /*$keys = array('D', 5, 10, 'L');
$a = array_fill_keys($keys, '中国');
print_r($a);//结果:Array ( [D] => 中国 [5] => 中国 [10] => 中国 [L] => 中国 ) */ //array_pad 用值将数组填补到指定长度(了解即可)
/*原形:array array_pad ( array $input , int $pad_size , mixed $pad_value )
array_pad() 返回 input 的一个拷贝,并用 pad_value 将其填补到 pad_size 指定的长度。如果 pad_size 为正,则填补到数组的右侧,如果为负则从左侧开始填补。如果 pad_size 的绝对值小于或等于 input 数组的长度则没有任何填补。有可能一次最多填补 1048576 个单元。 */
/*$input = array(12, 10, 9);
$result = array_pad($input, 5, 0);
//结果:array(12, 10, 9, 0, 0)*/ //array_reverse — 返回一个单元顺序相反的数组
/*原形:array array_reverse ( array $array [, bool $preserve_keys = false ] )
功能:array_reverse() 接受数组 array 作为输入并返回一个单元为相反顺序的新数组。
参数说明:preserve_keys 如果设置为 TRUE 会保留数字的键。
非数字的键则不受这个设置的影响,总是会被保留。
*/ /*$a= array('D' => '中', '美', '日');
$b = array_reverse($a);
print_r($b);*/
/*输出: Array( [0] => 日 [1] => 美 [D] => 中) */ //array_keys — 返回数组中部分的或所有的键名
/*原形:array array_keys ( array $array [, mixed $search_value [, bool $strict = false ]] )
功能:array_keys() 返回 input 数组中的数字或者字符串的键名。
如果指定了可选参数 search_value,则只返回该值的键名。否则 input 数组中的所有键名都会被返回。
参数说明:
search_value 如果指定了这个参数,只有包含这些值的键才会返回。
strict 判断在搜索的时候是否该使用严格的比较(===)。
*/
$a = array('x' => 'a', 'y' => 'b','d' => 'c', 'l' => 'd');
$b = array_keys($a);
print_r($b);
//提取键形成新数组 array ( 0 => 'x', 1 => 'y', 2 => 'd', 3 => 'l') /*
array_values — 返回数组中所有的值
原形:array array_values ( array $input )
功能:array_values() 返回 input 数组中所有的值并给其建立数字索引。
*/
/*$a = array('d' => '中', 'l' => '德','x' => '法', 'y' => '英');
$b = array_values($a);
print_r($b);*/
//结果: Array ( [0] => 中 [1] => 德 [2] =>法 [3] =>英 )
?>

PHP:第四章——PHP数组转换,统计,相关函数的更多相关文章

  1. PHP:第四章——PHP数组处理函数

    <pre> <?php //数组处理函数 header("Content-Type:text/html;charset=utf-8"); //compact(); ...

  2. PHP:第四章——PHP数组查找,替换,过滤,判断相关函数

    <pre> <?php //查找,替换,过滤,判断相关函数 header("Content-Type:text/html;charset=utf-8"); /*知 ...

  3. PHP:第四章——PHP数组添加,删除,插入,分割,合并,及运算符

    <pre> <?php header("Content-Type:text/html;charset=utf-8"); /*知识点一:赋值运算符 = 代码示例:数 ...

  4. 自学Java第四章——《数组》

    4.1 数组的相关概念和名词(了解) 1.数组(array): 一组具有相同数据类型的数据的按照一定顺序排列的集合. 把有限的几个相同类型的变量使用一个名称来进行统一管理. 2.数组名: (1)这个数 ...

  5. PHP:第四章——PHP数组array_intersect计算数组交集

    <pre> <?php //array_intersect计算数组交集 header("Content-Type:text/html;charset=utf-8" ...

  6. PHP:第四章——PHP数组array_diff计算数组差集

    <pre> <?php header("Content-Type:text/html;charset=utf-8"); /*知识点一:array_diff — 计 ...

  7. 《利用python进行数据分析》读书笔记--第四章 numpy基础:数组和矢量计算

    http://www.cnblogs.com/batteryhp/p/5000104.html 第四章 Numpy基础:数组和矢量计算 第一部分:numpy的ndarray:一种多维数组对象 实话说, ...

  8. 《利用Python进行数据分析·第2版》第四章 Numpy基础:数组和矢量计算

    <利用Python进行数据分析·第2版>第四章 Numpy基础:数组和矢量计算 numpy高效处理大数组的数据原因: numpy是在一个连续的内存块中存储数据,独立于其他python内置对 ...

  9. perl5 第四章 列表和数组变量

    第四章 列表和数组变量 by flamephoenix 一.列表二.数组--列表的存贮  1.数组的存取  2.字符串中的方括号和变量替换   3.列表范围  4.数组的输出  5.列表/数组的长度  ...

随机推荐

  1. 《课程设计》——cupp的使用

    <课程设计>--cupp的使用 cupp简介 cupp是强大的字典生成脚本.它是一款用Python语言写成的可交互性的字典生成脚本.尤其适合社会工程学,当你收集到目标的具体信息后,你就可以 ...

  2. 20165211 2017-2018-2 《Java程序设计》第2周学习总结

    20165211 2017-2018-2 <Java程序设计>第2周学习总结 教材学习内容总结 本周,我学习了书本上二三两章的内容,以下是我整理的主要知识 第二章 基本数据类型与数 标识符 ...

  3. 计算TCP链接的RTO超时重传时间

  4. 《Python程序设计(第3版)》[美] 约翰·策勒(John Zelle) 第 2 章 答案

    判断对错1.编写程序的好方法是立即键入一些代码,然后调试它,直到它工作.2.可以在不使用编程语言的情况下编写算法.3.程序在写入和调试后不再需要修改.4.Python 标识符必须以字母或下划线开头.5 ...

  5. Makefile使用总结【转】

    1. Makefile 简介 Makefile 是和 make 命令一起配合使用的. 很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之 ...

  6. Educational Codeforces Round 27 A B C

    A. Chess Tourney   Berland annual chess tournament is coming! Organizers have gathered 2·n chess pla ...

  7. 02_Spark Application不同模式下的监控

    监控Spark Application的运行 官方文档: http://spark.apache.org/docs/latest/monitoring.html 1.1 监控方式 Driver Pro ...

  8. MVC ---- EF4.0和EF5.0增删改查的写法区别及执行Sql的方法

    EF4.0和EF5.0增删改查的写法区别 public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T>(). ...

  9. F4+2 团队项目软件设计方案

    目录 1引言 1.1编写目的 1.2背景 1.3定义 1.4参考资料 2总体设计 2.1需求规定 2.2运行环境 2.3基本设计概念和处理流程 2.4功能描述 2.5功能器求与程序的关系 2.6人工处 ...

  10. JS-Object(3) 继承(prototype方式, 类方式); javascript6的知识(部分)

    原型方式的继承 创建child object classes(constructors) , 子类如何从父类中继承特性. 原型链继承prototypal inheritance (ruby中的继承也是 ...