标签:
SPL 库的使用(PHP 标准库)
1. SplStack,SplQueue,SplHeap,SplFixedArray 等数据结构类
① 栈(SplStack)(先进后出的数据结构)
index.php:
<?php define(‘BASEDIR‘,__DIR__); //定义根目录常量 include BASEDIR.‘/Common/Loader.php‘; spl_autoload_register(‘\\Common\\Loader::autoload‘); $stack = new SplStack(); $stack->push("data1\n"); //入栈 $stack->push("data2\n"); echo $stack->pop(); //出栈 echo $stack->pop();
运行,页面输出(查看源文件):
data2
data1
② 队列(SplQueue)(先进先出的数据结构)
index.php:
<?php define(‘BASEDIR‘,__DIR__); //定义根目录常量 include BASEDIR.‘/Common/Loader.php‘; spl_autoload_register(‘\\Common\\Loader::autoload‘); $queue = new SplQueue(); $queue->enqueue("data1\n"); //入队 $queue->enqueue("data2\n"); echo $queue->dequeue(); //出队 echo $queue->dequeue();
运行,页面输出(查看源文件):
data1
data2
③ 堆(SplHeap)
最小对:SplMinHeap
index.php:
<?php define(‘BASEDIR‘,__DIR__); //定义根目录常量 include BASEDIR.‘/Common/Loader.php‘; spl_autoload_register(‘\\Common\\Loader::autoload‘); $head = new SplMinHeap(); $head->insert("data1\n"); //存入堆 $head->insert("data2\n"); echo $head->extract(); //提取堆中的数据 echo $head->extract();
运行,页面输出(源代码):
data1
data2
④ 固定尺寸的数组(SplFixedArray )
index.php:
<?php define(‘BASEDIR‘,__DIR__); //定义根目录常量 include BASEDIR.‘/Common/Loader.php‘; spl_autoload_register(‘\\Common\\Loader::autoload‘); $array = new SplFixedArray(10); //固定长度的数组,例如长度为10 $array[0] = 123; $array[9] = 1234; var_dump($array);
运行,页面输出:
object(SplFixedArray)[1] int 123 null null null null null null null null int 1234
2. ArrayIterator、AppendIterator、Countable、ArrayObject
3. SPL 提供的函数
标签:
原文地址:http://www.cnblogs.com/dee0912/p/4412035.html