You can use almost any text editor that you like, but one with syntax highlighting simplifies the work. Notepad ++ is a convenient editor for Windows and has syntax highlighting for various languages, including PHP, HTML, CSS and SQL.
Look at some tutorials - this is often easier than wading through documents - although documents are , of course, necessary.
There is a good step-by-step guide for beginners at tizag.com :
PHP Tutorial - Learn PHP
Once you learn the basics, there are many more tutorials. I really like some of the PHPro tutorials, but there are many others. Here are some PHPro articles to get you started:
Object Oriented Programming with PHP
Introduction to PHP Sessions
Introduction to PHP and MySQL
Introduction to SimpleXML with PHP
HTML parsing with PHP and DOM
Introduction to PHP Regex
Note. I placed the regular expression tutorial after the SimpleXML tutorial for a good reason. If you ever want to parse HTML with regular expressions, just read this . If you are still not sure, read it again . :-)
When you get into the database (I assume MySQL for the sake of simplicity, but this applies equally to other DBMSs), warm yourself up with a little dynamic SQL and mysql_real_escape_string . Then quickly go to mysqli :: to prepare prepared statements . You will probably save yourself a ton of problems if you consider dynamic SQL as a training exercise, but then move on to prepared instructions for everything else.
Try to familiarize yourself with some common PHP security issues and what can be done to mitigate them.
It is a good idea to develop consistent naming standards .
When you start writing more complex sites, you might want to take a look at the mechanisms of templates. There is a degree of disagreement with them, since PHP can be used directly as a template system. However, I had a good impression of Smarty , and I found that it helps me to distinguish the application logic from the displayed code.
Patterns bring me into the framework. They do a lot of website writing. There are many available, and everyone will have their own opinions about which is better. Therefore, instead of offering one, here is a link to a list of popular ones:
http://www.phpframeworks.com/
By the time you get to this stage, you will probably find using the debugger very convenient. A good starting point (it works and it is free) is a combination of Eclipse with XDebug - but there are other options.