0

Introdução à Standard PHP Library

criado por Herbert Araujo em 30/07/2007 3:42pm
Utilizando a função spl_classes() é possível saber todas as classes SPL disponíveis no seu PHP. spl_classes() retorna um array, veja:

<?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 />";
}
?>

Comentários:

Mostrando 1 - 3 de 3 comentários
Excelente artigo, muito útil,
valeu mesmo,
03/08/2007 11:01pm (~17 anos atrás)

Ótimo artigo.

Vale a pena utilizar essas classes.

02/08/2007 9:26am (~17 anos atrás)

Maravilha cara!

Obrigado pela apresentação.
01/08/2007 6:02am (~17 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)