Introdução à Standard PHP Library
Utilizando a função spl_classes() é possível saber todas as classes SPL disponíveis no seu PHP. spl_classes() retorna um array, veja:
saída:
Com a classe SimpleXMLIterator por exemplo é possível ler um XML facilmente apenas com um foreach(). Imagine o arquivo contatos.xml abaixo:
Mostrando todos os nomes:
Arrays também podem ser percorridos com as classes *Iterators disponíveis:
<?php echo "<pre>" . print_r(spl_classes(), 1) . "</pre>"; ?>
saída:
Array ( [AppendIterator] => AppendIterator [ArrayIterator] => ArrayIterator [ArrayObject] => ArrayObject [BadFunctionCallException] => BadFunctionCallException [BadMethodCallException] => BadMethodCallException [CachingIterator] => CachingIterator [Countable] => Countable [DirectoryIterator] => DirectoryIterator [DomainException] => DomainException [EmptyIterator] => EmptyIterator [FilterIterator] => FilterIterator [InfiniteIterator] => InfiniteIterator [InvalidArgumentException] => InvalidArgumentException [IteratorIterator] => IteratorIterator [LengthException] => LengthException [LimitIterator] => LimitIterator [LogicException] => LogicException [NoRewindIterator] => NoRewindIterator [OuterIterator] => OuterIterator [OutOfBoundsException] => OutOfBoundsException [OutOfRangeException] => OutOfRangeException [OverflowException] => OverflowException [ParentIterator] => ParentIterator [RangeException] => RangeException [RecursiveArrayIterator] => RecursiveArrayIterator [RecursiveCachingIterator] => RecursiveCachingIterator [RecursiveDirectoryIterator] => RecursiveDirectoryIterator [RecursiveFilterIterator] => RecursiveFilterIterator [RecursiveIterator] => RecursiveIterator [RecursiveIteratorIterator] => RecursiveIteratorIterator [RuntimeException] => RuntimeException [SeekableIterator] => SeekableIterator [SimpleXMLIterator] => SimpleXMLIterator [SplFileInfo] => SplFileInfo [SplFileObject] => SplFileObject [SplObjectStorage] => SplObjectStorage [SplObserver] => SplObserver [SplSubject] => SplSubject [SplTempFileObject] => SplTempFileObject [UnderflowException] => UnderflowException [UnexpectedValueException] => UnexpectedValueException )
Com a classe SimpleXMLIterator por exemplo é possível ler um XML facilmente apenas com um foreach(). Imagine o arquivo contatos.xml abaixo:
<?xml version="1.0" encoding="iso-8859-1"?> <contatos> <contato> <nome>João</nome> <email>joao@php</email> </contato> <contato> <nome>Maria</nome> <email>maria@php</email> </contato> </contatos>
Mostrando todos os nomes:
<?php $dados = file_get_contents("contatos.xml"); foreach (new SimpleXMLIterator($dados) as $contato) { echo $contato->nome . "<br />"; } ?>
Arrays também podem ser percorridos com as classes *Iterators disponíveis:
<?php $n = new ArrayIterator(array(1, 2, 3)); foreach ($n as $value) { echo $value . "<br />"; } ?>
valeu mesmo,