php does not need to install the spl standard library, because the spl standard library is some extended classes and extended interfaces built into php. Its content includes data structures, iterators, interfaces, exceptions, SPL functions, file processing, etc. Content does not require additional configuration and can be used directly.
The operating environment of this article: windows7 system, PHP7.1 version, DELL G3 computer
How to install spl standard library in php?
PHP’s SPL Standard Library
1, Introduction
SPL, the full name is Standard PHP Library. Chinese is the standard PHP class library. They are some built-in extended classes and extended interfaces in PHP, which include data structures, iterators, interfaces, exceptions, SPL functions, file processing, etc. SPL extension can only be used in PHP version 5.3 and later, and does not require additional configuration and can be used directly. Detailed information can be viewed on the PHP official website https://www.php.net/spl. Here we mainly explain the use of data structure content in SPL.
2, use
1, stack
The stack is a first-in, first-out data structure. And can only operate on both ends of the stack, push or pop. The SplStack class provides the main functionality of a stack by using a doubly linked list. Think of popping the stack as the process of traversing an opposite array
$stack = new SplStack(); $stack->push('张三<br>');//入栈 $stack->push('李四<br>'); $stack->unshift("王五");//将’王五‘放入栈底 echo $stack->pop();//出栈 李四 echo $stack->pop();//张三 echo $stack->pop();//王五
Copy code
2. Column alignment
The queue is a first-in, first-out data structure. The SplQueue class also provides the main functionality of a queue through the use of a doubly linked list.
$queue = new splQueue(); $queue->enqueue(5);//入队列 $queue->enqueue(2); $queue->enqueue(1); $queue->enqueue(3); echo $queue->dequeue(); //出队列 5 echo $queue->dequeue(); //2 echo $queue->dequeue(); //1 echo $queue->dequeue(); //3
3. Heap
The heap is a data structure designed to implement a priority queue. It is implemented by constructing a binary heap. The heap with the largest root node is called the maximum heap or large root heap, and the heap with the smallest root node is called the minimum heap or small root heap. Both the maximum heap (SplMaxHeap) and the minimum heap (SplMinHeap) inherit the heap it implements and is mainly used for sorting.
//最大堆 升序输出 $heap = new SplMaxHeap(); $heap->insert('E'); $heap->insert('B'); $heap->insert('D'); $heap->insert('A'); $heap->insert('C'); echo $heap->extract().'<br>'; # E echo $heap->extract().'<br>'; # D // 最小堆 降序输出 $heap = new SplMinHeap(); $heap->insert('E'); $heap->insert('B'); $heap->insert('D'); $heap->insert('A'); $heap->insert('C'); echo $heap->extract().'<br>'; echo $heap->extract().'<br>';
Max heap: The element value of each parent node in the heap is greater than or equal to its child node (if it exists);
Minimum heap: The element value of each parent node in the heap is Less than or equal to its child node (if it exists);
4. Fixed array
//固定数组 $i = 1000000; $fixbtime = microtime(true); $fixstart = memory_get_usage(); $fixArray = new SplFixedArray($i);//生成长度为i的固定数组 $fixend = memory_get_usage(); $fixetime = microtime(true); //普通数组 $btime2 = microtime(true); $arr = array_fill(0, $i, null); $end = memory_get_usage(); //生成固定长度的固定数组和普通数组所用时间 echo $fixetime - $fixbtime, PHP_EOL; //固定数组 0.0065009593963623 echo microtime(true) - $btime2, PHP_EOL; //普通数组 0.1734619140625 //生成固定长度的固定数组和普通数组所占内存 echo $fixend - $fixstart, PHP_EOL; //固定数组 4000280 byte echo $end - $fixend, PHP_EOL; //普通数组 52194712 byte
In terms of memory and time, fixed arrays consume much less than ordinary arrays. But for fixed arrays, the memory application is done in one step. When the memory is not enough, an error will be reported. When the memory is not used up, it will not be released and can only be wasted. At the same time, fixed arrays are index arrays and cannot use keys other than integers.
Recommended learning: "PHP Video Tutorial"
The above is the detailed content of How to install spl standard library in php. For more information, please follow other related articles on the PHP Chinese website!