He visto mucho en foros de internet como muchas personas se complican la vida haciendo ciertas cosas en PHP que serían mucho más simple, sin necesidad de escribir decenas de código, confieso que yo alguna vez hice lo mismo, pero si estás usando versiones recientes de PHP de la 5 en adelante existen nuevas funciones que te ayudan a hacer más rápido las cosas, Diogo un joven programador de Brasil nos explica 7 ejemplos.

Listar archivos de un directorio

$iterator = new DirectoryIterator(\'/var/www\');

foreach ( $iterator as $entry ) {
    echo $entry->getFilename(), "\\n";
}

Y para listar archivos recursivamente:

$iterator = new RecursiveDirectoryIterator(\'/var/www\');
$recursiveIterator = new RecursiveIteratorIterator($iterator);

foreach ( $recursiveIterator as $entry ) {
    echo $entry->getFilename(), "\\n";
}

Interpretar consultas de una URL

$dados = array(
    \'hl\' => \'pt-BR\',
    \'q\'  => \'Forgetting Sarah Marshall\',
    \'testa-escape\' => \'acentuação\',
);

echo http_build_query($dados);

Y lo inverso

$url = parse_url(\'http://www.google.com/search?q=anneke+van+giersbergen&num=50\');

parse_str($url[\'query\'], $query);

echo $query[\'q\'];

Leer páginas remotas

$contents = file_get_contents(\'http://php.net/file_get_contents\');

Enviar datos por método Post a una página remota

$content = http_build_query(array(
    \'cidade\' => \'Rio de Janeiro\',
    \'tipo\'   => \'Apartamento\',
));

$context = stream_context_create(array(
    \'http\' => array(
        \'method\'  => \'POST\',
        \'content\' => $content,
    )
));

$contents = file_get_contents(\'http://exemplo/teste.php\', null, $context);

Descargar un archivo remoto

$url = "http://userserve-ak.last.fm/serve/500/4349551/Terri+Clark.jpg";

copy($url, \'/tmp/\' . urldecode(basename($url)));

Hacer cálculos con fechas

echo \'Amanhã: \', strftime(\'%A\', strtotime(\'tomorrow\'));
// Amanhã: domingo

echo \'Próxima segunda: \', strftime(\'%d de %B de %Y\', strtotime(\'next monday\'));
// Próxima segunda: 01 de junho de 2009

echo \'Vencimento: \', strftime(\'%d/%m/%Y\', strtotime(\'+3 months\'));
// Vencimento: 30/08/2009

Escapar SQL y HTML

$conexao = new PDO(\'mysql:dbname=banco;host=localhost\', \'login\', \'senha\');

$uf = \'RJ\';
$idade = 18;

$sth = $conexao->prepare(\'SELECT nome FROM pessoa WHERE uf = ? AND idade > ?\');

$sth->execute(array($uf, $idade));

while ( $row = $sth->fetch() ) {
    echo $row[\'nome\'];
}