exercises in the PHP Solutions book