Ein guter Rahmen.
PHP hat viele zur Auswahl: Zend , Solar , CakePHP , Symfony , Kohana . Ein guter Rahmen wird die meisten langweiligen Teile der Anwendungsentwicklung einbeziehen, sodass Sie mehr Zeit für die Implementierung projektspezifischer Domänenlogik aufwenden können. Ein Framework wird auch dazu beitragen, einen konsistenten Kodierungsstil zu erzwingen, hat in der Regel viel Dokumentation und die meisten sind sehr gut getestet und insgesamt stabil.
Eine gute IDE.
Für jeden ernsthaften Entwickler ist eine gute IDE ein Muss. Projektorganisation, Verzeichnisnavigation, Code-Vervollständigung und verschiedene nützliche Erweiterungen (zum Beispiel für Dateiversionssysteme) sind allesamt große Produktivitätssteigerungen. PHP hat mehrere gute IDEs einschließlich Zend Studio und PDT für Eclipse .
Build-System.
Build-Skripts sind nützlich für automatisch wiederkehrende Aufgaben wie das Festlegen von Verzeichnis- / Dateiberechtigungen, SVN-Aktualisierungen, Ausführen von Tests usw., bevor ein Projekt zwischen Phasen verschoben wird (Entwicklung / Bereitstellung / Produktion). Ich benutze hauptsächlich Phing (ein Ant Klon) ) zum Erstellen und Bereitstellen von Projekten.
Werkzeuge zum Profilieren und Debuggen.
Diese beiden Anforderungen werden mit demselben Tool gelöst - xdebug , das verbesserte Debugging-Funktionen bietet und außerdem kcachegrind Berichte für die Profilerstellung Ihrer Anwendung. Ich verwende dann webgrind , um auf diese Berichte zuzugreifen.
Op-Code-Cache.
PHP hat einen großen Leistungseinbruch durch sein Laufzeit-Kompatibilitätsschema. Op-Code-Caches tun Wunder, um dies zu verbessern, indem sie Scripts in ihrem kompilierten Zustand zwischenspeichern, wodurch der Overhead der Kompilierung beim Cache-Hit vermieden wird . Ich benutze APC als meinen Op-Code-Cache, wenn ich die Gelegenheit dazu habe.
Verschiedene Open-Source-Pakete.
Da PHP Open-Source als Sprache ist, hat Open Source eine lange Tradition. Es gibt viele hochwertige / nützliche Pakete für die häufigsten (und einige ungewöhnliche) Bedürfnisse, die viel Entwicklungszeit sparen können. Ich habe wordpress und joomla als Blogging-Plattformen verwendet , HTML Purifier zum Bereinigen und Validieren von HTML, minify zum Minimieren und Verketten von CSS und Javascript unter anderem.
Versionsverwaltung der Quelldatei.
Ein Muss, unabhängig von der Programmiersprache. Ich benutze SVN mit einem Tortoise Client ( für Windows).
IDE: PDT für Eclipse
Versionskontrolle: SVN mit Tortoise SVN
Andere Details, wie das Framework, hängen vom Projekt ab.