dedlfix: PHP-Frameworks?

Beitrag lesen

echo $begrüßung;

Und dennoch ist Zend-Studio "sein Geld wert", will heißen, das Geld wert, was Zend Studio mehr kann als Eclipse mit PHP-Plugin?

Zumindest für mich. Das Zend Studio arbeitet in einigen Details besser als die Eclipse-Plugins. PHP hat ja bekanntermaßen keine starke Typisierung. Und es gibt Situationen, da weiß der Codevervollständigungsparser nicht genau, welchen Typ eine Variable aktuell hat und kannd ann nicht richtig unterstützen. Angenommen man hat eine Funktion, die Objekte der Klasse Baz oder der Klasse Qux als Parameter übergeben bekommen soll. (Unter PHP muss man das alles in einer Funktion abhandeln, unter Java oder C# erstellt man eigene Funktionen mit gleichem Namen aber anders typisierten Parametern.)

PHP:  function foo($bazqux)
C#:   void foo(Baz baz) und void foo(Qux qux)

Nun wertet man mit instanceof aus, welcher Klasse das aktuell Objekt entstammt und verzweigt zur Baz-Behandlung oder zur Qux-Behandlung. Man hat aber keine in beiden Fällen richtig funktionierende Codevervollständigung für $bazqux->…, weil man im phpdoc-Block nicht beide Klassen als Typ für $bazqux angeben kann. Und da hilft einem das ZS, weil man mittels eines speziellen Kommentars mitten im Code den Typ einer Variable festlegen kann. Und schon funktioniert die C.V. wieder ordentlich. Zudem hat man auch gleich dokumentiert, welchen Typ man gerade behandelt.

if ($bazqux instanceof Baz)
  /* @var $bazqux Baz */
  ...
else
  /* @var $bazqux Qux */
  ...

Das war nur ein Beispiel. Doch auch anderweitig fühlt sich das ZS manchmal besser an als die Konkurrenz. Allerdings ist auch nicht das Non-Plus-Ultra. Beispielsweise bei der SVN-Unterstützung hat meine Version arg wenig zu bieten.

echo "$verabschiedung $name";