title: How to install Eclipse + PHP Development Tools (PDT) + Debugger on Mac in The Year 2011
body: <p>I had a lot of trouble installing Eclipse and PDT on my system. It took two days, largely because all the tutorials I could find were out of date (written in 2008, it's 2011 now) and various steps they included were no longer necessary, broken, or irrelevant. I wanted to write my process here so it could be improved upon (via wiki) as time goes on.</p>
  
  <ol>
  <li><p>Install Eclipse <em>without PHP plugin</em> ("<a href="http://www.eclipse.org/downloads/" rel="nofollow noreferrer">Eclipse Classic</a>"). This will give you a complete Eclipse, which I find preferable, as the UI is more fleshed out (e.g. you get a default list of Perspectives, which helps you understand what Perspectives are.)</p></li>
  <li><p>Install PDT SDK with the Help > Install New Software menu item. You'd think you'd be done here, but if you try to run something, it'll fail complaining of not having a debugger.</p></li>
  <li><p>Install the Zend Debugger. It'll fail if you try to use the Install New Software option, as many tutorials suggest ("No repository found containing osgi.bundle.org.zend.php.debug.debugger.5.3.7.v20091116".) Instead, download it from <a href="http://www.zend.com/en/community/pdt" rel="nofollow noreferrer">http://www.zend.com/en/community/pdt</a>, and manually copy the features/ and plugins/ directory into your Eclipse install (these instructions are not written anywhere).</p></li>
  <li><p>Restart Eclipse</p></li>
  <li><p>Monkey with preferences for a while -- if you followed a previous tutorial and tried to manually add your php executable to Eclipse prefs (/usr/bin/php), remove it (PHP > PHP Executables). Set one of the Zend Debugger executables to the default. If you've already tried to execute a .php file, remove the existing "Run" profile you (maybe weren't aware that you) created (Run > Debug Configurations...).</p></li>
  <li><p>Eclipse works! You should be able to run a .php file as a script just fine.</p></li>
  </ol>