PHP 5 in practice - White III, Elliott (SAMS, 2007)