//spl标准库提供的4种常用数据结构:栈、队列、堆、固定长度数组
$stack = new SplStack(); //栈
$stack->push("ajia\n");
$stack->push("youxi\n");
echo $stack->pop();
echo $stack->pop();
echo "<br>=======<br>";
$queue = new SplQueue(); //队列
$queue->enqueue("ajia\n");
$queue->enqueue("youxi\n");
echo $queue->dequeue();
echo $queue->dequeue();
try{
$arr = new SplFixedArray(3);//初始化长度为3
$arr[1] = 1;
$arr[2] = 3;
print_r($arr);
}catch(Exception $e){
echo $e->getMessage();
}
//spl扩展实现目录文件递归输出
$path = realpath('./');
$dir = new RecursiveDirectoryIterator($path); //获取路径下的所有文件和目录,不会递归输出
$objects = new RecursiveIteratorIterator($dir, RecursiveIteratorIterator::SELF_FIRST);
foreach($objects as $name => $object){
echo "$name<br>";
}