W3Schools is the best covers a large area on the topic. But you could buy a book. I think books are better. I can't imagine someone spending weeks on the computer learning the all subject of PHP. Your eyes!
The best way to learn in any programming language is to code and practice, make mistakes, and learn from your mistakes.
I think the book "Learn PHP 5" from David Sklar is the best thing you can find. So far better than websites. http://www.amazon.com/Learning-PHP-5-David-Sklar/dp/0596005601
I've always liked O'Reilly's titles, so I'd recommend their Programming PHP book. It's authored by Rasmus Lerdof, PHP's creator, along with other PHP industry experts, so it could be considered pretty authoritative.
IMHO goal orientated learning is by far the best way to learn. A bunch of echo 'hello world'; tutorials aren't going to teach you much. The best way is to start a project and as you work your way through it try to look up how to do each part. When I decided to learn php, I wanted to make a clone of myspace (back before it became popular haha) and as I got to each part I looked up how to do it. When I finished, the site was functional but the code was a mess but I learned ALOT. After that I started making simple CMS scripts.
IBM have a good PHP reading list Zend have a good course for beginners, called PHP 101: PHP For the Absolute Beginner WikiBooks - PHP Programming has lots of good examples. You can find a lot of PHP books on Google Books but most of them have missing pages which is really annoying
tizag.com is great place to start with .. however the more better way after learning basic php is to download free complex php scripts from the internet and then trying to modify them. This gives you a lot of insights on the usability of various php functions. It enhances your coding skills and puts you in the league of greater and better programmers. Start participating in php troubleshooting topics and you will learn more
tutorialized.com/tutorials/PHP/1 goodphptutorials.com/ teamtutorials.com/ Just read these example php script. becoz practice is important to become a good php developer.