<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Tue, 18 Jun 2013 20:43:12 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Brian Moon's Blog: Monitoring PHP Errors]]></title>
      <guid>http://www.phpdeveloper.org/news/15404</guid>
      <link>http://www.phpdeveloper.org/news/15404</link>
      <description><![CDATA[<p>
<i>Brian Moon</i> has <a href="http://brian.moonspot.net/monitoring-php-errors">a new post</a> to his blog that pulls together some of his thoughts on monitoring PHP applications and how to handle the error that might be thrown.
</p>
<blockquote>
PHP errors are just part of the language. Some internal functions throw warnings or notices and seem unavoidable. A good case is parse_url. The point of parse_url is to take apart a URL and tell me the parts. Until recently, the only way to validate a URL was a regex. You can now use filter_var with the FILTER_VALIDATE_URL filter. But, in the past, I would use parse_url to validate the URL. It worked as the function returns false if the value is not a URL. But, if you give parse_url something that is not a URL, it throws a PHP Warning error message. The result is I would use the evil @ to suppress errors from parse_url. Long story short, you get errors on PHP systems. And you don't need to ignore them.
</blockquote>
<p>
He talks about the two-step process he's upgraded to to help monitor and handle the errors that pop up - an <a href="http://us.php.net/manual/en/function.set-error-handler.php">error handler</a> that logs human-readable and json versions of the errors and something like <a href="http://circonus.com/">Circonus</a> to do metric tracking. He also mentions some external services recommended on twitter - <a href="http://hoptoadapp.com/">HopToad</a> and <a href="http://www.loggly.com/">Loggly</a>.
</p>]]></description>
      <pubDate>Tue, 09 Nov 2010 11:09:16 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Sebastian Bergmann's Blog: RC2 Is The New RC1 (PHPUnit)]]></title>
      <guid>http://www.phpdeveloper.org/news/9028</guid>
      <link>http://www.phpdeveloper.org/news/9028</link>
      <description><![CDATA[<p>
<i>Sebastian Bergmann</i> has <a href="http://sebastian-bergmann.de/archives/717-RC2-Is-The-New-RC1.html">posted about</a> the latest release of the popular unit testing framework for PHP, <a href="http://www.phpunit.de">PHPUnit 3.2</a>.
</p>
<blockquote>
I have just released a second release candidate for <a href="http://www.phpunit.de/">PHPUnit</a> 3.2, the next major version of the <a href="http://en.wikipedia.org/wiki/XUnit">xUnit</a> testing framework for <a href="http://www.php.net/">PHP</a>.
</blockquote>
<p>
According to <a href="http://www.phpunit.de/wiki/ChangeLog">the Changelog</a>, updates in this new Release Candidate include a number of updates to the software metrics that can be run on code (at project, file, function, class and method level), the addition of DbUnit, code coverage improvements, bug fixes to the TestUI test runner and Selenium integration and much more.
</p>]]></description>
      <pubDate>Tue, 13 Nov 2007 10:24:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Sebastian Bergmann's Blog: Copy & Paste Detection in PHPUnit 3.2]]></title>
      <guid>http://www.phpdeveloper.org/news/8508</guid>
      <link>http://www.phpdeveloper.org/news/8508</link>
      <description><![CDATA[<p>
<i>Sebastian Bergmann</i> <a href="http://sebastian-bergmann.de/archives/693-Copy-Paste-Detection-in-PHPUnit-3.2.html">spotlights another feature</a> of the upcoming <a href="http://www.phpunit.de/">PHPUnit</a> version 3.2 - the inclusion of a <a href="http://sebastian-bergmann.de/archives/690-PHPUnit-as-a-Project-Mess-Detector.html">Project Mess Detector</a>'s ability to help find duplicate code.
</p>
<blockquote>
Duplicate code can be hard to find, especially in a large project. Johann-Peter Hartmann of <a href="http://www.mayflower.de/">MAYFLOWER GmbH</a> recently implemented <a href="http://pmd.sourceforge.net/cpd.html">Copy & Paste Detection</a> for PHPUnit's growing set of features that extends its usage scenarios beyond "just unit testing" to a one-stop solution for quality assurance in PHP-based projects.
</blockquote>
<p>
In <a href="http://sebastian-bergmann.de/archives/693-Copy-Paste-Detection-in-PHPUnit-3.2.html">his example</a>, <i>Sebastian</i> shows what the response will look like when the tests find duplicate code - giving details like the files involved and the code fragment that was duplicated.
</p>
<p>
Check out <a href="http://sebastian-bergmann.de/archives/689-PHPUnit-and-Software-Metrics.html">this list</a> in another post on <i>Sebastian</i>'s blog for more of the metrics that will be included in the upcoming version.
</p>]]></description>
      <pubDate>Wed, 22 Aug 2007 09:31:00 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Sebastian Bergmann's Blog: PHPUnit as a Project Mess Detector]]></title>
      <guid>http://www.phpdeveloper.org/news/8420</guid>
      <link>http://www.phpdeveloper.org/news/8420</link>
      <description><![CDATA[<p>
<i>Sebastian Bergmann</i> has a <a href="http://sebastian-bergmann.de/archives/690-PHPUnit-as-a-Project-Mess-Detector.html">new post</a> today about a different sort of use for the <a href="http://www.phpunit.de">PHPUnit</a> testing software - a "Project Mess Detector".
</p>
<blockquote>
As of version 3.2, PHPUnit will not only be able to calculate and collect a <a href="http://sebastian-bergmann.de/archives/689-PHPUnit-and-Software-Metrics.html">variety of software metrics</a>. It will also be able to report violations of rules that are based on these metrics in PMD's XML format. This information can then be fed to any tool that integrates with PMD.
</blockquote>
<p>
The <a href="http://pmd.sourceforge.net/">Project Mess Detector</a> (PMD) software scans code and looks for potential problems. Having this integrated with PHPUnit means one less piece of software to run and the potential for even better written code.
</p>]]></description>
      <pubDate>Thu, 09 Aug 2007 20:47:06 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Sebastian Bergmann's Blog: PHPUnit and Software Metrics]]></title>
      <guid>http://www.phpdeveloper.org/news/8388</guid>
      <link>http://www.phpdeveloper.org/news/8388</link>
      <description><![CDATA[<p>
In a <a href="http://sebastian-bergmann.de/archives/689-PHPUnit-and-Software-Metrics.html">update to his recent post</a> on Cyclomatic Complexity in PHPUnit, <i>Sebastian Bergmann</i> has given more information about the software metrics support that the upcoming release (3.1.6) of <a href="http://www.phpunit.de">PHPUnit</a> will offer.
</p>
<blockquote>
The upcoming 3.1.6 release of <a href="http://www.phpunit.de/">PHPUnit</a> adds a couple of <a href="http://en.wikipedia.org/wiki/Software_metrics">software metrics</a> to the data that is stored in PHPUnit's <a href="http://www.phpunit.de/wiki/TestDatabase">test database</a>. 
</blockquote>
<p>
Among the metrics gathered are things like: lines of code, commented lines of code, an attribute inheritance factor, depth of inheritance tree, method hiding factor and a polymorphism factor (he links each of these more complex ones for more information on the subject). Still included in the post is an example of the output for the Cyclomatic Complexity metric. 
</p>]]></description>
      <pubDate>Fri, 03 Aug 2007 12:06:00 -0500</pubDate>
    </item>
  </channel>
</rss>
