So I want to start developing Wordpress themes, but I don't know PHP. How much knowledge should I have of PHP before I begin Wordpress development? Can anyone recommend any PHP books?
If you know some scripting, then it really isn't necessary to know much PHP to get started at all. I did my first wordpress theme without knowing any PHP, and it wasn't particular hard to figure out what goes where. The only time when I found that I needed someone who really knew PHP was when there were problems that I had to debug, but even then just a little bit of research got me through things.
As for books, I can highly recommend Head First PHP and MySQL.
WordPress for Dummies has a chapter or two about developing themes for WordPress. It assumes little to no knowledge of PHP so it'll guide you through the basics of the language, at least, what you need to know to get started with WordPress theming.
In addition to the WordPress book that teaches you how to do it, it will be greatly to your advantage to edit your files in an editor such as Aptana Studio or NetBeans that show PHP Syntax errors while you're typing.
That way, you'll be able to just undo to wherever you caused the problem, rather than having to rely on loading the file through wordpress to tell when you broke something. I know wordpress and PHP well, and this still makes my life tremendously easier.
You don't need to know any code to produce a wordpress theme. A great deal of it does come with how you will utilize it and what you expect it to accomplish. For example, if you are making a theme for small businesses, then you will have to configure sidebars and other things so that the user doesn't have to do any work.
If for yourself, the best way to learn is to "copy" someone else's them without looking at any code. Go through the codex, look at some examples, use the wp tutorials on the net, and talk to others about some little known codex functions that are helpful or cool to use.
I think sometime along the way, take some time to learn bits of php. If you take 3 hours a day learning WP, and 1 learning php, you will have good standing in web development by around 400-600 hours.