Does PHP have built-in data structures?

后端 未结 14 728
名媛妹妹
名媛妹妹 2021-01-30 00:18

I\'m looking at the PHP Manual, and I\'m not seeing a section on data structures that most languages have, such as lists and sets. Am I just blind or does PHP not have anything

14条回答
  •  说谎
    说谎 (楼主)
    2021-01-30 00:40

    PHP offers data structures through the Standard PHP Library (SPL) basic extension, which is available and compiled by default in PHP 5.0.0.

    The data structures offered are available with PHP 5 >= 5.3.0, and includes:

    Doubly Linked Lists

    A Doubly Linked List (DLL) is a list of nodes linked in both directions to each others. Iterator’s operations, access to both ends, addition or removal of nodes have a cost of O(1) when the underlying structure is a DLL. It hence provides a decent implementation for stacks and queues.

    • SplDoublyLinkedList class
      • SplStack class
      • SplQueue class

    Heaps

    Heaps are tree-like structures that follow the heap-property: each node is greater than or equal to its children, when compared using the implemented compare method which is global to the heap.

    • SplHeap class
      • SplMaxHeap class
      • SplMinHeap class
    • SplPriorityQueue class

    Arrays

    Arrays are structures that store the data in a continuous way, accessible via indexes. Don’t confuse them with PHP arrays: PHP arrays are in fact implemented as ordered hashtables.

    • SplFixedArray class

    Map

    A map is a datastructure holding key-value pairs. PHP arrays can be seen as maps from integers/strings to values. SPL provides a map from objects to data. This map can also be used as an object set.

    • SplObjectStorage class

    Source: http://php.net/manual/en/spl.datastructures.php

提交回复
热议问题