<?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>Sun, 06 Jul 2008 16:53:15 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Jake Blauzier's Blog: Event-Based AJAX Framework for PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/10399</guid>
      <link>http://www.phpdeveloper.org/news/10399</link>
      <description><![CDATA[<p>
<i>Jake Blauzier</i> has just posted the last part of his series focusing on the creation of an event-based Ajax framework that works with PHP. It allows for calls to static functions, can return Javascript representations of PHP objects and a "call queue" system to keep things from overlapping.
</p>
<p>Here's the list of the parts of the series:</p>
<ul>
<li><a href="http://www.jacoblauzier.com/blog/2008/05/event-based-ajax-framework-for-php/">Part 1</a> - introduction, sample usage
<li><a href="http://www.jacoblauzier.com/blog/2008/05/event-based-ajax-framework-for-php-part-2/">Part 2</a> - problems in making an event-based ajax callback model (and his solutions) 
<li><a href="http://www.jacoblauzier.com/blog/2008/06/event-based-ajax-framework-for-php-part-3/">Part 3</a> - the use of JSON in the framework
<li><a href="http://www.jacoblauzier.com/blog/2008/06/event-based-ajax-framework-for-php-part-4/">Part 4</a> - implementation of the Scriptifiable interface
<li><a href="http://www.jacoblauzier.com/blog/2008/06/event-based-ajax-framework-for-php-part-5/">Part 5</a> - implementing the Remotable interface
</ul>
<p>
You can download the latest version of his Ajax framework directly <A href="http://www.jacoblauzier.com/blog/wp-content/uploads/2008/05/ajaxframework1.zip">from his blog</a>. 
</p>]]></description>
      <pubDate>Thu, 12 Jun 2008 11:18:31 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Brian Moon's Blog: Stupid PHP Tricks: Normalizing SimpleXML Data]]></title>
      <guid>http://www.phpdeveloper.org/news/10328</guid>
      <link>http://www.phpdeveloper.org/news/10328</link>
      <description><![CDATA[<p>
<i>Brian Moon</i> has a "stupid PHP trick" posted to his blog today - <a href="http://brian.moonspot.net/2008/06/03/stupid-php-tricks-normalizing-simplexml-data/">normalizing SimpleXML data</a> you've pulled in from just about any external source.
</p>
<blockquote>
Anyhow, one annoying thing about SimpleXML has to do with caching.  When using web services, we often cache the contents we get back.  We were having a problem where we would get an error about a SimpleXML node not existing.
</blockquote>
<p>
They were using memcache to store the information but came across problems when their code tried to use a (sometimes) empty tag. He gives two solutions - one using a recursive function that identifies the empty items and the other that encodes then decodes the object to and from JSON, keeping the values intact.
</p>]]></description>
      <pubDate>Tue, 03 Jun 2008 09:34:22 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Marco Tabini's Blog: 5 PHP 5 features you can't afford to ignore]]></title>
      <guid>http://www.phpdeveloper.org/news/10071</guid>
      <link>http://www.phpdeveloper.org/news/10071</link>
      <description><![CDATA[<p>
<i>Marco Tabini</i> has <a href="http://mtabini.blogspot.com/2008/04/5-php-5-features-you-cant-afford-to.html">posted his list</a> of what he considers five features of PHP5 that you "can't afford to ignore" when doing your development work:
</p>
<blockquote>
Despite the fact that you may not have a choice in the matter, upgrading comes with a number of bonus new features that can help you write better code and gain access to new functionality that required a fair amount of hacking in previous version. Here's a quick list of 5 personal favourites.
</blockquote>
<p>
The feature to make his list are SimpleXML, JSON/SOAP, PDO, the Standard PHP Library and SQLite. Each has their own bonus feature(s) included too for a little extra incentive to check them out.
</p>]]></description>
      <pubDate>Tue, 29 Apr 2008 17:06:45 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Michael Girouard's Blog: Rolling Your Own MVC: The View]]></title>
      <guid>http://www.phpdeveloper.org/news/10052</guid>
      <link>http://www.phpdeveloper.org/news/10052</link>
      <description><![CDATA[<p>
<i>Michael</i> is back with <a href="http://www.lovemikeg.com/blog/2008/04/28/rolling-your-own-mvc-the-view/">part three</a> of his series stepping you through the creation of your own MVC framework (<a href="http://www.lovemikeg.com/blog/2008/02/21/rolling-your-own-mvc-introduction/">Part 1</a> and <a href="http://www.phpdeveloper.org/news/9944">Part 2</a>) with a look at the part that interfaces with the user - the View.
</p>
<blockquote>
Using the view as a starting point may seem odd at first considering the view-related actions are some of the last steps in the page load scenario, but since our views don't have any external dependencies, unit tests are very easy to write and so is the accompanying code.
</blockquote>
<p>
He <a href="http://www.lovemikeg.com/blog/2008/04/28/rolling-your-own-mvc-the-view/">explains</a> how views work along with the rest of the framework and some of the basic rules surrounding how they get their data. Code comes along with the explanations for different views like XML, HTML and JSON methods of output. 
</p>]]></description>
      <pubDate>Mon, 28 Apr 2008 09:39:45 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Cal Evans' Blog: I called Zend_Json::encode(), so WTH are all my properties?]]></title>
      <guid>http://www.phpdeveloper.org/news/9687</guid>
      <link>http://www.phpdeveloper.org/news/9687</link>
      <description><![CDATA[<p>
In dealing with a little JSON encoding and objects in a project of his recently, <i>Cal Evans</i> <a href="http://blog.calevans.com/2008/02/21/zend_jsonencode-and-wth-are-all-my-properties/">bumped against a problem</a> when he was encoding an object and moving it back and forth between the back and front ends.
</p>
<blockquote>
The problem is simple, JSON encode a PHP object and send it back to the front end. Sounds simple and the last 100 times I wrote this code it was simple. This time, I was too smart for my own good. Here's the scenario.
</blockquote>
<p>
He illustrates his problem - the "dropping" of properties somewhere along the way - with a sample class that encodes the object and sends it along. He missed one key bit of information, though. His protected array of properties wasn't getting passed back out correctly and we're in the resulting JSON message. A quick hack of a getProperties() function call made this problem a thing of the past.
</p>]]></description>
      <pubDate>Fri, 22 Feb 2008 12:10:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Jan Lehnardt's Blog: CouchDb PHP Library for JSON API]]></title>
      <guid>http://www.phpdeveloper.org/news/8620</guid>
      <link>http://www.phpdeveloper.org/news/8620</link>
      <description><![CDATA[<p>
<i>Jan Lehnardt</i> <a href="http://jan.prima.de/~jan/plok/archives/90-CouchDb-PHP-Library-for-JSON-API.html">points out</a> an update that's been made to the CouchDb PHP library for the JSON API. As <a href="http://groups.google.com/group/couchdb/browse_thread/thread/7c298162217f0799">posted to the mailing list</a> for the project:
</p>
<blockquote>
Dear Couch Potatoes (or something), I updated the CouchDb PHP Library and the Demo application BugShrink (our bug-tracker) to the new JSON API.
</blockquote>
<p>
You can try out this new update via <a href="http://couchprojects.googlecode.com/svn/trunk/">the project's repository</a> or just check out the <a href="http://code.google.com/p/couchprojects/">CouchDb project homepage</a> for more information.
</p>]]></description>
      <pubDate>Mon, 10 Sep 2007 11:10:00 -0500</pubDate>
    </item>
  </channel>
</rss>
