Hi :)

I want to begin learning PHP programming, can you tell me what I will need to do it?

I have downloaded:
- NetBeans IDE 6.5.1

What else do I need?

For example; on the numerous tutorials I have looked at, one tells me I need to download echo, another says I need win32 debug package, MySQL etc?

I have started coding, but I cant even view my 'hello world' project that I created because it just comes up as a blank webpage? Should I use a different editor & not NetBeans?

Any advice on what I need to download to program in PHP?

All you need is either a server supporting PHP.

Or if you want to develop on your home PC, you will need both Apache HTTP server (apache.org) (Or another server) and the PHP package from php.net. Plenty of guides online on how to install and configure these.

If you're on Windows and you're not willing to move to Linux then you can get WAMP or XAMPP. And I'll tell you right now: lose Netbeans. If you have to use such a bloated IDE use Zend IDE or Eclipse. Netbeans has no place touching PHP in my opinion.

Well this is what I would recommend:

  • Notepad++
  • XAMPP
  • A web browser

Most of the web development tools are included in XAMPP including Perl, CGI, PHP, Apache, MySql, Mail Server, Localhost Uploader. However I find that the mail server is a bugger to get up and running and the localhost uploader isn't really needed since you can just copy and past files into the c:/xampp/htdocs folder. Also when you are ready I can provide you with a few tweaks to enable .htaccess files and to enable curl.

I would recomend
Dreamweaver
PHP Designer

From a professionals point of view, Dreamweaver causes too many compatibility problems. I have checked out PHP Designer and found that it contains so many unneeded features which can cause a misleading programming experience. Generally the IDE should only have a debugger when it a- compiles into binary or b- if there is no official debugger. And php has a pritty good debugger which means you may be given incorrect/inaccurate data by other debuggers. So for sure a IDE that just highlights syntax and has tabs is all that you need/want for best results. That is why I have chosen notepad++. If however you find php incredibly difficult then you may want to switch to something like PHP Designer. Would like to see what other comments there are on this post.

I would recomend
Dreamweaver
PHP Designer
XAMPP or WAMP or EASYPHP
Firefox

From cost point of view, do you believe everyone can afford to spend so much money? Secondly, I would never use DW for Java web development (JSP, etc.)so I believe most PHP guys will not use it either (to many issues only specifically designed package can handle it properly, not like general purpose DW).

Lamp package for windows

WLMP-Standard-1.1.5.1169-Win32-HUN.exe

mysql5
php5
phpmyadmin
dreamweaver 8
notepad

dont forget that IE8 has web developer tools now f12

so does firefox, firebug plugin :O very good tools

things i always use

Things needed to program in php:

1. XAMPP. I have found this to be the easiest to get running on a windows system. If you get into php programming, get an old computer and put linux on it (I use Ubuntu). Nothing is easier than installing php and mysql on linux. I was shocked when I typed one thing and everything was installed and configured.

2. Notepad or Notepad++. Keep it simple. Do use anything that does everything for you. Debugging your own code helps the learning process more than anything.

3. ABILITY TO USE GOOGLE. When you run into a problem, solve it yourself. You will learn a lot faster this way. It may take days to figure out the simplest problem, but after all of that I promise you won't make the same mistake again.

4. ABILITY TO READ THE PHP MANUAL. No one knows php better than the people who developed it. Read the manual. Almost every problem you have can be fixed just by looking on that website.

Never use dreamweaver for anything. First of all, it writes the ugliest html code that usually doesn't validate. Write the code yourself (if you know xhtml and css).

Make sure you test your php and html code on every major browser. Even though php is server-side, some browsers handle headers, cookies, ect. different.

Stay away from open source code at first. Learn from it, but don't use it. Once you understand how they work and you can code a similar product, then use it. Otherwise you won't learn anything. Most of the time, I still code everything myself even though I can just download it. I don't feel like much of a developer, if I don't develop anything (You might think differently).

Look into php security. Escape and sanitize user input. Use token systems and timeout for forms. Avoid captcha when you can (most people don't like them). There are other methods (stated above) that do a better job. Research XSS,CSRF,SQL Injection,Session hacks. Most of this will seem foreign at first, but you will figure them out soon enough.

Look into php frameworks (cakephp and code ignitor). I personally don't use them because I prefer my own, but they help speed up the development process. They are a good tool, but won't help you learn. Don't use them until you learn php.

Notepad++ is cool - no need for bloated IDE
XAMPP
FireFTP for Firefox (upload to remote webserver)
WebDeveloper Tools plugin for Firefox
All modern browsers (Opera,FF,Safari, Chrome, IE)
Borrow a Mac to test other browsers!
Mobile - test live site with this
sqlYog for a MySQL GUI - cool.

All free (except the mobile!)

This article has been dead for over six months. Start a new discussion instead.