The "best" way depends entirely on you - how do you normally learn best? Do you currently have any programming experience?
I don't recall the name of the PHP book I bought but it was very good. It's published by Wrox.
For what it's worth, here's how I got started:
A friend of mine kept going on about PHP/mySQL.
I needed a simple web database application done in a hurry, so I asked him to throw it together.
He did. In an hour or two. I was mighty impressed.
I rolled up my sleeves and tweaked with the code, changing how it worked. This got me hooked.
I bought the above book and got a feel for what the language was good at.
I kept finding new applications to write with PHP, getting more and more complex.
Now, about a year later, I'm still learning new stuff that I can do with PHP, but I have programmed POP readers, sending and reading mail with attachments, creating graphics on the fly, doing all manner of things to databases, obscure string manipulations (I'm almost ashamed of what I've done to Shakespeare), creating my own web logging system, and generally getting a lot of development done quite quickly.
How you pick things up may be different. 🙂
But that's how I got to grips with PHP in the evengings while keeping down both a dayjob and a full social life 🙂
Jack