progress in PHP support for KDevelop

Hey everyone. Been some time since I last blogged… I want to take the chance to give you all a bit of overview over the last changes in the PHP plugin for KDevelop:

Performance Improvements

I spent quite some time profiling various aspects of the PHP plugin, be it parsing and DUChain building over to (just yesterday) code completion. I’m confident to say that I found (and removed) quite a few bottlenecks, making the plugin much more comfortable to use.

I’m really blown away time over time again by valgrind & KCachegrind… What would we do without these tools?


An (imo) very strong point for using KDevelop for PHP programming is it’s seamless support for documentation. Be it the “simple” inline documentation in the Declaration Tooltips or the extended integration of the remote docs. But these past days I improved our generator for the inline documentation of built-in PHP language constructs considerably:

These changes increased the size of the generated file to whopping 3.1M. This was too much for me and hence I added support to ship this file zipped (i.e. now it’s 80% smaller) and we decompress it transparently with the use of KZip. Adding such a feature was a breeze, so nice to work with the KDE Api :)

There are still a few things missing and stuff I plan to improve here, so stay tuned for more news in this regard.


Want to comment? Send me an email!

Comment by Rob (not verified) (2010-01-28 12:38:00)

Installation on Gentoo

Sorry for being such a noob, but I’m struggling to find out how to install the php plugin on my Gentoo box. I’ve unmasked and emerged the latest versions of kdevelop and kdevplatform but I’m not seeing any of the PHP loveliness that you’re describing. So I need the plugin - but where from? There don’t seem to be any php use flags on kdevelop or kdevplatform and I’ve been scouring the portage tree for anything that looks like a php plugin but I can’t find it. I’d like to avoid checking out directly from the SVN repository just because it’s not the Gentoo Way - is there an overlay or something to get me started?

Thanks for any help

Comment by Rob (not verified) (2010-01-29 12:02:00)

Found it, compiled and installed - Thanks

Comment by Maciej Mrozowski (not verified) (2010-01-28 16:54:00)

There is an overlay - Gentoo KDE project official one:

layman -a kde

PHP support is in dev-utul/kdevelop-plugins

Comment by Lafriks (not verified) (2010-01-22 22:45:00)

Great news! :) Would it be possible to add support for properties that some frameworks uses (like Prado and Yii)? For example writing Prop1->Prop2 = 4; ?> would be treateted same as it would be getProp1()->setProp2(4); ?>

Comment by dereine (not verified) (2010-01-21 10:37:00)

Would it be possible, that this is for example availible as ppa or as part of the openSuse build service? This would really really help out people to test it.

Comment by Alex (not verified) (2010-01-21 16:03:00)

try to add this repos to your Ubuntu

there is package kdevelop-php

Comment by zegenie (not verified) (2010-01-23 18:22:00)

Unfortunately, that package hasn’t been updated since beta 2 :(

Comment by Milian Wolff (2010-01-25 16:18:00)

That’s because PHP has nothing newer than beta 2 ;-)

Stay tuned for a new release soonish (together with the next KDevelop Beta).

Comment by Alexander (not verified) (2010-01-20 19:16:00)

Thanks a lot for your work! I wonder why PHP plugins hadn’t become part of KDevelop yet, and are being released separately? I think that would improve their adoption (unless it’s not desired at this stage yet).

Comment by Milian Wolff (2010-01-21 02:02:00)

We are now in extragear, so we definitely get more attraction by packagers. And we will never be part of KDevelop. KDevelop is an implementation/collection of KDevplatform plugins and is geared towards C++ development. Php otoh will be part of Quanta eventually, once it gets into shape (still in far future I fear). Until then we’ll release separately.

Comment by netcelli (not verified) (2010-01-20 18:35:00)

Thank you a lot for it! It’s wot I was waiting for :D

Published on January 20, 2010.