PHP 数组(Array)

简介: PHP 数组(Array)

  • 数组
  • 就是将多个"数据"放在一起,排成一个有序序列,这个序列作为一个整体(里面包括了多个数据), 就称为"数组"。
  • 下标的可用值可以使用整数或字符串。

数组常用函数

  • max():获取一个数组中的最大值
  • min():获取一个数组中的最小值
  • count():获取一个数组的元素个数
  • inarray():判断一个数据是否在指定数组中。 语法形式: \$b= inarray( \$数组,数据); // 结果 true 或 false
  • range():生成某个范围的连续值的数组 比如 range(3, 9) 会得到数组: array(3, 4.5,6, 7,8, 9);
  • arraykeys():取出一个数组中的所有“键”并放入一个索引数组中。
  • arrayvalues():取出一个数组中的所有“值”并放入一个索引数组中。
  • arraypush():将一个或多个数据放入一个数组的“末端”。
  • array pop():将一个数组的最后一个单元删除,并返回该单元的值。
  • array_ reverse():将一个数组的所有单元的顺序进行反转(最前的放最后,最后的放最前)

  • 整数下标的特性 可以使用任意整数,也可以不显式使用下标,此时默认就是整数下标。 而且,从前往后,每一个没有使用下标的单元,系统给其分配的下标为之前所用过的整数下标的最大值+1。


<?php // 分别对应的下标 $arr = array( 'a' => 'abc', // 'a' 'def', // 0 10, // 1 5 => 20, // 5 'b' => 22, // 'b' 30 // 6 );


  • PHP中,有如下几个函数,可以针对数组指针进行相应操作:
  • \$re = current(\$arr1); // 取得数组中当前指针所在单元的值;
  • \$re = key(\$arr1); // 取得数组中当前指针所在单元的键(下标) ;
  • \$re = next(\$arr1); // 将数组中的指针往后移动一个位置,并取得新位置上的值;
  • \$re = prev(\$arr1); // 将数组中的指针往前移动一个位置,并取得新位置上的值;
  • \$re = end(\$arr1); // 将数组中的指针移动到最后一个位置,并取得新位置上的值;
  • \$re = reset(\$arr1); // 将数组中的指针移动到最前一个位置,并取得新位置上的值;


```


// foreach 便利 $key => $value foreach ($arr as $key => $value) { echo $key . '=>' . $value; } // foreach 便利 $key foreach ($arr as $key) { echo $key; } // foreach 便利 $value foreach ($arr as $value) { echo $value; }


// 快捷获取属性 echo current($arr); // 'abc' echo key($arr); // 'a' next($arr); // 指针往后移动一位 echo current($arr); // 'def' echo key($arr); // '0' end($arr); // 指定移动到最后 echo current($arr); // 30 echo key($arr); // 6 reset($arr); // 指针回到第一个 echo current($arr); // 'abc' echo key($arr); // 'a'


// for 循环便利 $len = count($arr); for ($i = 0; $i < $len; $i++) { $key = key($arr); $value = current($arr); echo '

' . $key . '=>' . $value; next($arr); } /* a=>abc 0=>def 1=>10 5=>20 b=>22 6=>30 */ ?> ```


  • 数组创建使用方式:


```


// 新版本中上面两种方法还可以这么写 ---- 推荐 $info1 = ['dzm', 18, '男']; $info2 = ['name'=>'dzm', 'age'=>18, 'gender'=>'男'];


// 给数组某项赋值 $info1[0] = 'xyq'; $info2['age'] = 19;


// 使用数组(使用单项) echo $info1[0]; // xyq echo $info2['name']; // dzm echo $info2['age']; // 19


// 整体输出数组 printr($info1); // Array ( [0] => xyq [1] => 18 [2] => 男 ) printr($info2); // Array ( [name] => dzm [age] => 19 [gender] => 男 ) ?> ```


相关文章
|
9月前
|
PHP C++ 索引
PHP 高效之道:字符串与数组处理的实用技巧
PHP 高效之道:字符串与数组处理的实用技巧
335 83
|
10月前
|
JSON 数据处理 PHP
PHP数组处理技巧:高效操作数据集合
PHP数组处理技巧:高效操作数据集合
|
10月前
|
JSON 安全 大数据
PHP中的数组处理艺术:灵活高效的数据操作
PHP中的数组处理艺术:灵活高效的数据操作
|
10月前
|
大数据 数据处理 PHP
PHP中的数组过滤与映射:高效数据处理技巧
PHP中的数组过滤与映射:高效数据处理技巧
|
9月前
|
存储 JSON PHP
PHP数组键值转换的隐秘陷阱:整数还是字符串?
PHP数组键值转换的隐秘陷阱:整数还是字符串?
266 58
|
9月前
|
PHP 开发者 索引
探究PHP中常见数组操作函数
在编码实践中,合理利用这些数组操作函数可以简化编程工作,提升代码的效率和可读性。为达到最佳实践,开发者应该通过阅读官方文档来深入理解每个函数的工作原理以及如何在不同的场景下运用它们。
356 8
|
9月前
|
测试技术 PHP 开发者
PHP 数组查找:为什么 `isset()` 比 `in_array()` 快得多?
PHP 数组查找:为什么 `isset()` 比 `in_array()` 快得多?
|
人工智能 Java
Java 中数组Array和列表List的转换
本文介绍了数组与列表之间的相互转换方法,主要包括三部分:1)使用`Collections.addAll()`方法将数组转为列表,适用于引用类型,效率较高;2)通过`new ArrayList&lt;&gt;()`构造器结合`Arrays.asList()`实现类似功能;3)利用JDK8的`Stream`流式计算,支持基本数据类型数组的转换。此外,还详细讲解了列表转数组的方法,如借助`Stream`实现不同类型数组间的转换,并附带代码示例与执行结果,帮助读者深入理解两种数据结构的互转技巧。
914 1
Java 中数组Array和列表List的转换
|
JavaScript 前端开发 API
JavaScript中通过array.map()实现数据转换、创建派生数组、异步数据流处理、复杂API请求、DOM操作、搜索和过滤等,array.map()的使用详解(附实际应用代码)
array.map()可以用来数据转换、创建派生数组、应用函数、链式调用、异步数据流处理、复杂API请求梳理、提供DOM操作、用来搜索和过滤等,比for好用太多了,主要是写法简单,并且非常直观,并且能提升代码的可读性,也就提升了Long Term代码的可维护性。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
存储 Go 索引
go语言中的数组(Array)
go语言中的数组(Array)
343 67

热门文章

最新文章

  • 1
    PHP 数组查找:为什么 `isset()` 比 `in_array()` 快得多?
    248
  • 2
    Java 中数组Array和列表List的转换
    914
  • 3
    JavaScript中通过array.map()实现数据转换、创建派生数组、异步数据流处理、复杂API请求、DOM操作、搜索和过滤等,array.map()的使用详解(附实际应用代码)
    683
  • 4
    通过array.reduce()实现数据汇总、条件筛选和映射、对象属性的扁平化、转换数据格式、聚合统计、处理树结构数据和性能优化,reduce()的使用详解(附实际应用代码)
    1489
  • 5
    通过array.some()实现权限检查、表单验证、库存管理、内容审查和数据处理;js数组元素检查的方法,some()的使用详解,array.some与array.every的区别(附实际应用代码)
    615
  • 6
    通过array.every()实现数据验证、权限检查和一致性检查;js数组元素检查的方法,every()的使用详解,array.some与array.every的区别(附实际应用代码)
    440
  • 7
    多维数组操作,不要再用遍历循环foreach了!来试试数组展平的小妙招!array.flat()用法与array.flatMap() 用法及二者差异详解
    273
  • 8
    别再用双层遍历循环来做新旧数组对比,寻找新增元素了!使用array.includes和Set来提升代码可读性
    275
  • 9
    Array.forEach实战详解:简化循环与增强代码可读性;Array.forEach怎么用;面对大量数据时怎么提高Array.forEach的性能
    168
  • 10
    深入理解 JavaScript 中的 Array.find() 方法:原理、性能优势与实用案例详解
    697