php - php中的数组列表

标签 php data-structures arraylist

php 中除了array 之外还有其他数据结构吗?是否可以创建一个数据结构,例如 ArrayList?如果是这样,请提供一些引用资料或某种实现方式。

最佳答案

关于数组你需要知道的一切都可以在 documentation 中找到.

数组的所有可用函数都列在 functions reference 中.

一些注意事项:

  • 数组最初是 PHP 中唯一的数据结构。这就是为什么它们如此灵活。它们旨在用作堆栈、队列、数组、列表、哈希表等。后来 PHP 引入了 spl Datastructures .
  • 与 Java 不同,PHP 不是纯面向对象的语言。数组本身没有可以应用的内置方法。这必须通过“正常”功能来完成。
  • 数组没有固定大小。它们会自动扩展和收缩。

在下文中,我尝试列出最常见的 PHP 替代品 ArrayList methods :

  • add(element) 基本上只是通过 $array[] = $element 追加。新值获取下一个空闲数字索引(这是首选方式)。您也可以使用 array_push($array, $element) .
  • addAll(ArrayList):array_merge($array1, $array2)在某种方式。合并关联数组时要小心。相同键的值将被覆盖。
  • clone():由于数组不是对象,您只需将数组分配给另一个变量即可“克隆”数组:

        $a = array(1,2,3);
        $b = $a;
    
  • 包含(元素):in_array($element, $array)

  • get(index):与大多数语言一样:$val = $array[index];
  • indexOf(element):array_keys($array, $element)将您搜索的值作为第二个参数
  • isEmpty():empty($array)
  • remove(index):它的 unset($array[index])
  • remove(value) with value:您必须先获取键(参见 indexOf),遍历键并使用 unset .
  • size(): count($array)

关于php - php中的数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4570266/

相关文章:

java - 过滤掉时间复杂度为 O(n) 的列表元素

java - Vector 的填充时间比 ArrayList 少

c# - 可以快速调整大小的数组

java - 在数组列表中查找最大序列

javascript - 使用 laravel 和 ajax 部分页面重新加载

javascript - AJAX 实时搜索不显示结果

php - 我如何通过 session 找到用户 ID 和国家/地区

algorithm - 二叉树中最低层所有叶节点的总和

algorithm - 为什么 B-Tree 用于文件系统?

php - PHP 中的引用赋值运算符 =&