<?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>Fri, 21 Nov 2008 21:44:29 -0600</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[PHPImpact Blog: Analysis of coupling within the Zend Framework]]></title>
      <guid>http://www.phpdeveloper.org/news/10364</guid>
      <link>http://www.phpdeveloper.org/news/10364</link>
      <description><![CDATA[<p>
As the PHP:Impact blog <a href="http://phpimpact.wordpress.com/2008/06/08/analysis-of-coupling-within-the-zend-framework/">points out</a> there's a <a href="http://codecaine.co.za/posts/analysis-of-coupling-within-the-zend-framework#comment-125">new post</a> from <i>Neil Garb</i> talking about the (loose) coupling going on inside the Zend Framework.
</p>
<blockquote>
One of the Zend Framework's strongest drawing cards, as I see it, is its loosely-coupled structure. The name Zend Framework may be a misnomer, in fact, as ZF is more a set of reusable libraries than an actual application framework. I won't go into detail about the advantages of loose coupling, but a recent discussion on the ZF mailing list prompted me to investigate just how loosely coupled the framework is.
</blockquote>
<p>
He's created a few graphs to show the extent of the coupling - a <a href="http://en.wikipedia.org/wiki/Directed_graph#Directed_graph">directed graph</a>, the <a href="http://en.wikipedia.org/wiki/Graph_density">density</a> of it and example code showing deep and shallow coupling. <a href="http://codecaine.co.za/img/analysis-of-coupling-within-the-zend-framework/zf_coupling.png">Here's his results</a>.
</p>]]></description>
      <pubDate>Mon, 09 Jun 2008 07:56:00 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Richard Lord's Blog: PHP 5.2 - Nesting level too deep - recursive dependency?]]></title>
      <guid>http://www.phpdeveloper.org/news/6691</guid>
      <link>http://www.phpdeveloper.org/news/6691</link>
      <description><![CDATA[<p>
So, you've just upgraded to <a href="http://www.php.net/downloads.php">PHP 5.2</a> and all is going well until you come across a page in your application that gives the message "Nesting level too deep - recursive dependency?". With such a vague error message, you might have trouble locating the source of the problem. Thankfully, someone's already been there and <a href="http://www.bigroom.co.uk/blog/php-nesting-level-too-deep-recursive-dependency/">figured out the issue</a> - <i>Richard Lord</i>.
</p>
<blockquote>
I installed PHP 5.2 on one of my testing servers today and a couple of bits of code that previously worked fine in version 5.1.6 threw fatal errors in the new version. The error message was "Nesting level too deep - recursive dependency?" and it took a little time to track down the root of the problem. Here's what I'd done wrong.
</blockquote>
<p>
Basically, his problem was using the "non-strict" evaluation for checking if two objects were equal to each other (== instead of ===). This compares everything about them, down to the properties - even if they're references to other properties inside of the same class (which is where the problem lies).
</p>
<p>
So, the fix is simple - === instead of == when comparing those objects. You'll be happier for the change.
</p>]]></description>
      <pubDate>Mon, 13 Nov 2006 10:02:00 -0600</pubDate>
    </item>
  </channel>
</rss>
