Home » Php » php – phing and phpUnderControl … working together

php – phing and phpUnderControl … working together

Posted by: admin July 12, 2020 Leave a comment


Has anyone got these to work together seemlessly? I have tried, had some success using the plugin at http://phing.info/trac/wiki/Users/Documentation/CruiseControl, but have failed to:

  • Get the metrics graphs working (nothing appears)
  • Enable the “PMD” – project mess detection – reports

Are there any other ant-specific commands that must (can) be run in addition to my phing build script?

Also, the front page of the reports section dumps a heap of log information, and I’m trying to get rid of that too.

Cheers for any help … we are running phing 2.3.0 and phpUnderControl 0.4.7.


How to&Answers:

Our application framework makes heavy use of Phing, and we’ve got that integrated under CI with phpUnderControl. We do have the metrics and PMD working now, and honestly, it was a little bit of an accident that it started working. But we’re still missing the code coverage (working on it) and the phpDoc output (working on that too). I’ll try to remember to come back and update this when we’re done.

I have found that the main reason for the metrics not showing up is an incompatibility with the ez library that phpuc uses for the rendering. You’ll get this NullPointerException on the page, right? Then when you try to run a build manually, you’ll get this obscure error about index and divide by 0? What’s happening is the ez graphics library that ships with phpuc is old, and you have to upgrade it. I hope that’s a clue for you. We didn’t have trouble with PMD stuff, so I don’t know why that wouldn’t work for you. If you want to update your question with more specifics, maybe I can elaborate on what’s worked for us?


To answer my question, in the end I figured it was easier to just use an ant build script to make everything work.

I think phing is good when starting out, and has an excellent dbdeploy feature (which I use in phpUC), but for getting the metrics and the PHPMD integrated you are better off using ant – the XML is not hard.