<?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>Wed, 07 Jan 2009 02:23:05 -0600</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[NETTUTS.com: Create a PHP5 Framework - Part 3]]></title>
      <guid>http://www.phpdeveloper.org/news/11451</guid>
      <link>http://www.phpdeveloper.org/news/11451</link>
      <description><![CDATA[<p>
NETTUTS.com has posted <a href="http://feedproxy.google.com/~r/nettuts/~3/kbBKVqBRSJM/">the third part</a> of their series on creating a simple PHP5 framework today:
</p>
<blockquote>
Now that we've got a basic framework (see <a href="http://nettuts.com/php/creating-a-php5-framework-part-1/">part 1</a> and <a href="http://nettuts.com/tutorials/php/create-a-php5-framework-part-2/">part 2</a> of this series), we can start thinking about integrating designs with our PHP framework. For now, we'll concentrate on the front-end design, including how we can make it easy to 'skin' our new framework.
</blockquote>
<p>
<a href="http://feedproxy.google.com/~r/nettuts/~3/kbBKVqBRSJM/">This part</a> looks mostly at the HTML and CSS for the presentation layer (the views) to make a simple two-column layout with some basic image and text content.
</p>]]></description>
      <pubDate>Tue, 25 Nov 2008 08:47:01 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPClasses.org: PHP Object-Relational Mapping: ORM or ROM?]]></title>
      <guid>http://www.phpdeveloper.org/news/11186</guid>
      <link>http://www.phpdeveloper.org/news/11186</link>
      <description><![CDATA[<p>
On the PHPClasses.org blog today <i>Manuel Lemos</i> has <a href="http://www.phpclasses.org/blog/post/82-PHP-ObjectRelational-Mapping-ORM-or-ROM.html">posted a look</a> at ORM - what it is and how you can use it to improve your applications.
</p>
<blockquote>
Object-Relational Mapping, usually referred as ORM, is a software development approach to treat data stored in relational (SQL) database table records as if they were objects. Basically we can create classes with variables that represent fields of a database table. To insert a table record you need to create an object of the class, assign the variable values, and call a function of the class that takes care of inserting the table record
</blockquote>
<p>
He illustrates what it is (brief code samples) and some of the approaches that developers have taken to implementing it. He suggests, however, that they should truely be called ROM (Relational Object Mapping) libraries rather than ORM due to the fact that they map an object (the database tables) back in to PHP objects. He finishes with a list of a few ORM resources and libraries including the one that helps power the PHPClasses website, <a href="http://www.metastorage.net/">Metastorage</a>.
</p>]]></description>
      <pubDate>Fri, 10 Oct 2008 12:09:37 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Matthew Weier O'Phinney's Blog: Proper Layer files when using Dojo with Zend Framework]]></title>
      <guid>http://www.phpdeveloper.org/news/10978</guid>
      <link>http://www.phpdeveloper.org/news/10978</link>
      <description><![CDATA[<p>
<i>Matthew Weier O'Phinney</i> has <a href="http://weierophinney.net/matthew/archives/188-Proper-Layer-files-when-using-Dojo-with-Zend-Framework.html">another post</a> full of Dojo/Zend Framework goodness today - this time he looks at making proper layer files by combining the two.
</p>
<blockquote>
During my <a href="http://www.zend.com/en/resources/webinars/framework">Dojo and ZF webinar</a> on Wednesday, <a href="http://higginsforpresident.net/">Pete Higgins</a> of <a href="http://dojotoolkit.org/">Dojo</a> fame noted that I could do something different and better on one of my slides. This particular item had to do with how I was consuming custom Dojo build layers within my code. I contacted him afterwards to find out what he suggested, and did a little playing of my own, and discovered some more Dojo and javascript beauty in the process.
</blockquote>
<p>
The improvement replaced the need for a manual commenting/uncommenting of an addLayer call with a bit of namespaced layers that, based on the environment, adds a dependency for the right file. One less manual process, one less thing to go wrong on deployment.
</p>]]></description>
      <pubDate>Mon, 08 Sep 2008 07:54:52 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[ProDevTips.com: Doctrine for dummies]]></title>
      <guid>http://www.phpdeveloper.org/news/10766</guid>
      <link>http://www.phpdeveloper.org/news/10766</link>
      <description><![CDATA[<p>
<i>Henrik</i> waves goodbye to the Zend_Db component of the Zend Framework in <a href="http://www.prodevtips.com/2008/08/05/doctrine-for-dummies/">this new post</a> to the ProDevTips blog - his new favorite is <a href="http://www.phpdoctrine.org/">Doctrine</a>.
</p>
<blockquote>
It was long overdue but finally I've taken a look at <a href="http://www.phpdoctrine.org/">Doctrine</a>. And I'm blown away, bye bye Zend DB. [...] It's time to try and convey how awesome I think Doctrine is.
</blockquote>
<p>
His example sets up a table definition and defines the associations between the columns for a "members" table. He defines a "city" table too and shows how Doctrine can easily combine the two and make selecting from and inserting into the tables simple.
</p>]]></description>
      <pubDate>Tue, 05 Aug 2008 12:55:52 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Oracle Technology Network: Oracle Symfony in PHP Minor]]></title>
      <guid>http://www.phpdeveloper.org/news/10584</guid>
      <link>http://www.phpdeveloper.org/news/10584</link>
      <description><![CDATA[<p>
The Oracle Technology Network has a <a href="http://www.oracle.com/technology/pub/articles/gogola-symfony.html">new article</a> posted looking at a basic application that combines the power of an Oracle database with the flexibility of the <a href="http://www.symfony.org">Symfony</a> framework.
</p>
<blockquote>
Where should someone who wants to learn Symfony begin? Project Symfony has a very informative and well-kept Web site, with extensive documentation. As it turns out, there is a book about Symfony and there are also numerous tutorials-unfortunately all of them created using a MySQL database. That is, in essence, why I decided to write this article about Symfony and Oracle. It's not a full-blown tutorial, but I hope it will be helpful to those who want to use Symfony with Oracle.
</blockquote>
<p>
The <a href="http://www.oracle.com/technology/pub/articles/gogola-symfony.html">sample application</a> uses the latest version of Symfony, an Apache web server and the Zend Core for Oracle to install and configure the needed setup. The bulk of the tutorial is taken up with examples of how to tell the ORM layer of Symfony about your database tables and how to build the default classes from them.
</p>]]></description>
      <pubDate>Thu, 10 Jul 2008 18:02:37 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Francois Zeninotto's Blog: Comparing Propel, Doctrine and sfPropelFinder ]]></title>
      <guid>http://www.phpdeveloper.org/news/10568</guid>
      <link>http://www.phpdeveloper.org/news/10568</link>
      <description><![CDATA[<p>
<i>Francois Zeninotto</i> has <a href="http://redotheweb.com/2008/07/08/comparing-propel-doctrine-and-sfpropelfinder/">posted a comparison</a> of three different ORM (Object Relational Mapping) layers for PHP - Propel, Doctrine and sfPropelFinder (the last being a plugin of the <a href="http://www.symfony-project.org/">symfony</a> framework).
</p>
<blockquote>
When it comes to ORMs, it's all a matter of preference. Is it, really? This post compares side-by-side the code required to perform some simple operations with three OO database requesting API. The purpose is to demonstrate that productivity, and not only style, can vary a lot depending on the ORM you choose.
</blockquote>
<p>He's worked up a long list of examples including methods to:</p>
<ul>
<li>Retrieving an article by its primary key
<li>Retrieving the latest 5 articles
<li>Retrieving articles based on a complex AND/OR clause
<li>Retrieving articles authored by people of a certain group
<li>Retrieving an article and its category by the article primary key
<li>Retrieving articles and hydrating their author object and the author group
</ul>
<p>
Each one comes with their own (usually simple) code. His conclusions point out different "bests" of each - like sfPropelFinder being the "most magic" and that some of the limits of Propel are very frustrating.
</p>]]></description>
      <pubDate>Wed, 09 Jul 2008 10:24:59 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Davey Shafik's Blog: PHP Streams Book (Coming soon!)]]></title>
      <guid>http://www.phpdeveloper.org/news/10043</guid>
      <link>http://www.phpdeveloper.org/news/10043</link>
      <description><![CDATA[<p>
We can expect <a href="http://pixelated-dreams.com/archives/351-PHP-Streams-Book-Coming-soon!.html">big things</a> from <i>Davey Shafik</i> in the coming months - he's been working on a book for <a href="http://www.phparch.com">php|architect</a> about one of the more powerful bits of functionality in PHP - streams.
</p>
<blockquote>
For about 6 months now, I've been itching to write a book on the PHP Streams Layer - one of my favorite features of PHP; and also one of the least known considering it's powerful abilities.
</blockquote>
<p>
He describes his goal simply as this: to create the definitive resource for working with the streams later in PHP. It should be out sometime in the third quarter of 2008, so keep your eye out for it then.
</p>]]></description>
      <pubDate>Fri, 25 Apr 2008 12:04:09 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Community News: Forage - A Search Abstraction Layer]]></title>
      <guid>http://www.phpdeveloper.org/news/9591</guid>
      <link>http://www.phpdeveloper.org/news/9591</link>
      <description><![CDATA[<p>
A different sort of abstraction layer project has been started up and has already seen a few releases - <a href="http://code.google.com/p/forage">Forage</a>. As mentioned on <i>Rob Young</i>'s blog:
</p>
<blockquote>
<p>
Recently I've been working on a search abstraction library for PHP called Forage. The idea is to bring to search what we've had for relational databases for quite a while, abstraction. 
</p>
<p>
On Friday I put up a preview release with three backends; Solr, Xapian and Zend Search Lucene. At the moment it has the bare minimum of features but there will be more soon. In this post I'm going to talk a little about the motivation for the project and then walk through a short example.
</p>
</blockquote>
<p>
He talks about the need for search abstraction (integration and resilience to change) before getting into an example of some code that grabs the data from an RSS feed, passes it in to the <a href="http://xapian.org/">Xapian</a> search engine and stores it before looking it over for thier search terms ("yahoo microsoft").
</p>
<p>
You can <a href="http://code.google.com/p/forage/downloads/list">download the library</a> if you'd like to try it out for yourself.
</p>]]></description>
      <pubDate>Fri, 08 Feb 2008 11:16:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Community News: The PDO v2 Proposal]]></title>
      <guid>http://www.phpdeveloper.org/news/9494</guid>
      <link>http://www.phpdeveloper.org/news/9494</link>
      <description><![CDATA[<p>
<i>Wez Furlong</i> posted a <a href="http://news.php.net/php.pdo/1">request for comments</a> to the php.internals and php.pdo mailing lists yesterday about a new ly proposed update to the current PDO functionality - PDO 2. He just wants to clear up a few things...
</p>
<blockquote>
It became apparent over the past year or so that PDO has been a good and
valuable addition to PHP. [...] We believe that having direct involvement from the data access providers would be most effective, which is why we set out to try and get them on board.
</blockquote>
<p>
There were three steps they would need to make to push things to version two (documentation, define scope/direction and organize data provider integration methods) and the proposal that has caused a huge stir in the community - the idea of requiring a CLA contributors would need to sign.
</p>
<p>Comments to this point from the community include:</p>
<ul>
<li><a href="http://www.cyberlot.net/php-cla-pdo">Richard Thomas</a>
<li><a href="http://daylessday.org/archives/21-We-dont-need-no-new-PDO.html">Antony Dovgal</a>
<li>some of <a href="http://feeds.feedburner.com/~r/EvilAsInDr/~3/222720416/pdo-2-and-cla">Wez's own comments</a>
<li><a href="http://blog.digitalstruct.com/2008/01/24/thoughts-on-pdo-v2/">Mike Willbanks</a>
<li><a href="http://blogs.oracle.com/opal/2008/01/24#a267">Christopher Jones</a>
<li><a href="http://pooteeweet.org/blog/0/968">Lukas Smith</a>
<li><a href="http://paul-m-jones.com/?p=274">Paul Jones</a>
<li><a href="http://blog.thepimp.net/index.php/post/2008/01/24/Say-NO-to-CLA-in-PHP">Pierre-Alain Joye</a>
<li><a href="http://jpipes.com/index.php?/archives/208-Just-Chill...Chilll-Out,-OK-There-Aint-No-Devil-in-PDOv2.html">Jay Pipes</a>
<li><a href="http://derickrethans.nl/pdo_comments.php">Derick Rethans</a>
<li><a href="http://mtabini.blogspot.com/2008/01/heres-humble-thought-drop-cla.html">Marco Tabini</a>
<li><a href="http://mysqldump.azundris.com/archives/75-PHP-PDO-V2-CLA.html">Kristian Kohntopp</a>
<li>Some PDO humor from <a href="http://blog.agoraproduction.com/index.php?/archives/59-PDOv2-humor.html">David Coallier</a> and <a href="http://www.travisswicegood.com/index.php/2008/01/28/pdo2-humor">Travis Swicegood</a>
<li><a href="http://blog.somabo.de/2008/01/pdo-to-turn-php-into-closed-software.html">Marcus Borger</a> (and his <a href="http://blog.somabo.de/2008/02/we-want-pdo-don-we.html">part two</a>)
<li><a href="http://www.phpguru.org/#193">Richard Heyes</a>
<li><a href="http://till.vox.com/library/post/who-needs-it.html?_c=feed-rss-full">Till's blog entry</a>
<li><a href="http://open-php.net/">Say No to the CLA</a>
</ul>]]></description>
      <pubDate>Fri, 25 Jan 2008 08:58:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Community News: Finally, Phorum 5.2 has made it to stable!]]></title>
      <guid>http://www.phpdeveloper.org/news/9345</guid>
      <link>http://www.phpdeveloper.org/news/9345</link>
      <description><![CDATA[<p>
As mentioned in <a href="http://doughboy.wordpress.com/2008/01/02/96/">this post</a> on <i>Brian Moon</i>'s site the latest edition of <a href="http://doughboy.wordpress.com/2008/01/02/96/">phorum has been released</a>.
</p>
<blockquote>
When we officially started on 5.2 in March of 2006, we had several goals. I think we achieved most of those. We also accomplished some unplanned things. Our hackathon (me and maurice slept about 8 hours in 4 days I think) at MySQL Conference 2007 helped a lot. Remember, you can help us get there again by <a href="http://www.phorum.org/donate/donate.php">donating to our fund</a>.
</blockquote>
<p>
Updates include a new template for the forum, new PAI layers and more hooks to call them, better MySQL support, improved bundled modules, a new announcement system and a new, restructured search functionality.
</p>
<p>
If out more about the release <a href="http://www.phorum.org/story.php?78">here</a> and more about the <a href="http://www.phorum.org">Phorum software here</a>.
</p>]]></description>
      <pubDate>Thu, 03 Jan 2008 08:46:00 -0600</pubDate>
    </item>
  </channel>
</rss>
