时间:2021-07-01 10:21:17 帮助过:16人阅读
数组
数组属于复合类型数据
数组实际上是一个有序的映射
分类
索引数组 数组的下标(key)是数字 关联数组 数组的下标(key)是字符串
不论是索引数组还是关联数组,都是通过key找到value的。
创建
array(value1,value2,value3...)
例子一
// 通过array()创建下标连续的索引数组 $arr1 = array('A',2,false);输出结果: Array ( [0] => A [1] => 2 [2] => ) false转换成空字符串
例子二
//创建手动指定下标的数组 $arr2 = array(2=>'a',3=>true);输出结果: Array ( [2] => a [3] => 1 )
array(key1=>value1, key2=>value2, key3=>value3...)
例子
// 定义关联数组 $userInfo = array( 'username'=>'Tim', 'age'=>23, 'email'=>'404491216@qq.com' ); print_r($userInfo);输出结果: Array ( [username] => Tim [age] => 23 [email] => 404491216@qq.com )
$arr = [value1,value2,value3...]
// []创建数组 $arr = ['A','B',true,2]; print_r($arr);输出结果: Array ( [0] => A [1] => B [2] => 1 [3] => 2 )
用于创建下标连续的索引数组。
range(min, max(, 步进制))
步进制:每个值相差多少,默认为1。
// range()例子 值为1-10 $arr = range(1,10,2); print_r($arr);输出结果: Array ( [0] => 1 [1] => 3 [2] => 5 [3] => 7 [4] => 9 )
compact('变量名')
用于创建关联数组。
先定义在外部变量,然后传入变量即可生成数组。
注意,变量名需要用引号
括起来。
// compact()例子 $username = 'Tim'; $age = 23; $email = 'xxx@xx.com'; // 注意,这里变量名需要用引号 $userInfo = compact('username','age','email');输出结果: Array ( [username] => Tim [age] => 23 [email] => xxx@xx.com )
define(key,value)
define('TEST1',array('a','b','c')); print_r(TEST1);输出结果: Array ( [0] => a [1] => b [2] => c )
循环
for循环只能遍历下标连续
的索引数组
补充:
count() 得到数组中的参数个数
如果是null,count()将返回0。
// 使用rang()快速创建数组 $arr = range('a','d'); for($i=0; $i<$len; $i++){ echo $arr[$i],'<br/>'; }输出结果: a,b,c,d
只要value foreach (数组名称 as $value) key和value 都要 foreach (数组名称 as $key => $value)
注意:
遍历空数组,不会执行循环体;
for each遍历时,操作的是数组的副本 ( php7新特性 )
通过引用遍历,有更好的迭代特性,对数组的修改会影响循环 ( php7 )
// php7新特性——foreach操作的是数组的副本 $arr = [0,1,2]; $ref =&$arr; foreach($arr as $v){ echo $v,'<br/>'; // 老版本会删除1,但php7操作的是副本,所以没影响 unset($arr[1]); } foreach输出结果: 0 1 2 // 都是0、2 因为1被删除了 var_dump($arr,$ref); var_dump输出结果: array (size=2) 0 => int 0 2 => int 2 )
相关推荐:
php常用数组函数总结
以上就是php数组函数详解的详细内容,更多请关注Gxl网其它相关文章!