There are thousands if not millions of free tutorials online. We all have our favourites. However, most will be bad, full of poor advice and half-baked ideas. Books on the other hand, may be better as you can peruse the relevant areas easily and you can be relatively sure that the info contained within has been peer-reviewed. However, due to their nature, books date quickly and 'best practice' in a two year old book, will possibly not be best practice today. php moves on quite quickly.
Good books published by Wrox, Apress and O'Reilly.
The best thing is that you find yourself an idea of what you want to achieve and build your learning around that.
For php is best to start at the basics PHP.net will do it for starters, but for different logics, as diafol said, you need some good books, and if possible, offer yourself as an intern and steal some logic, that's how I started it :)