What is it specifically you want to learn? The best way to go about it is to figure out what you want to do (on a small scale), the do it. For instance, figure out how to load and display an image using PHP. Or put together the text from several different files to create a single unified page. For instance, you could use php to pull RSS feeds from a couple of sites, and display them in a TweetDeck style.
That's how I teach myself to code. I am way past the stage where I can follow tutorials to do much. My questions are more like "I need to display local weather on a webpage. How can I pull that information together in .PHP, .ASP, Perl, or whatever." Then I break it down into smaller parts. How do I pull an RSS feed from a website? How do I parse an RSS feed to keep just what I want? How do I display it to a web page? How do I make it update every 10 minutes? With PHP, you can get away with learning this way because the language is not that complex (which is not to say that it is not very powerful). I have been working on some Javascript for the last month that is incredibly complex, and that is how I am doing it. I try to break down the task into small steps, then I go about finding samples. I end up throwing out most of what I find because they are crap samples, but I don't know that they are crap until I look at the documentation and understand what each part of a script does. Even though I may not use much of what I find, I still learn.
"Take the risk of thinking for yourself, much more happiness, truth, beauty, and wisdo
m will come to you that way" - Christopher Hitchens