Depends if you have any programming experience at all. If you don't, maybe start with a simplier programming experience, just so you can understand the nomenclature and theories. I might suggest learning how to program with javascript. You can then use firefox / firebug to step through the code and watch what is happening at each step.
However just knowing function names and what they do really will only get you so far. You need to have a firm grasp on data structures before doing any serious programming.
If you want to learn with php then you will need to get an IDE and debugger set up so you can step through things.