<?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, 09 Jul 2008 00:17:31 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Lukas Smith's Blog: KISS my...]]></title>
      <guid>http://www.phpdeveloper.org/news/10381</guid>
      <link>http://www.phpdeveloper.org/news/10381</link>
      <description><![CDATA[<p>
<i>Lukas Smith</i> recently <a href="http://pooteeweet.org/blog/0/1151#m1151">posted about</a> issues he's been coming across with the "KISS" mentality (and code) that the Zend Framework implements, specifically for the Zend_Feed component.
</p>
<blockquote>
Now that I am actually using the Zend Framework on my first project, hitting bugs/limitations in Zend_Feed and therefore looking at the code, I must say I am seeing feature duplication with internal PHP features that does not quite fit in with the KISS principle.
</blockquote>
<p>
He points out a few things that illustrate his point - the use of Zend_Http_Client instead of a <a href="http://ch2.php.net/manual/en/function.stream-context-create.php">strea context</a>, passing XML contents into loadXML instead of just load. As a replacement, he's considered <a href="http://svn.ez.no/svn/ezcomponents/trunk/Feed/src/feed.php">a Feed component</a> from the eZ components system, but it hasn't been released (officially) yet. So, as an alternative, he's come up with <a href="http://pooteeweet.org/public/Zend_Feed.diff">a patch</a> to fix a few things in the Zend_Feed component to make it a bit more KISS-friendly.
</p>]]></description>
      <pubDate>Tue, 10 Jun 2008 12:53:58 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[ThinkPHP Blog: Accessing Nike+ data with PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/10191</guid>
      <link>http://www.phpdeveloper.org/news/10191</link>
      <description><![CDATA[<p>
On the ThinkPHP blog today, <i>Stephanie Ehrling</i> has <a href="http://blog.thinkphp.de/archives/323-Accessing-Nike+-data-with-PHP.html">posted about</a> a method for PHP to take in the output of the <a href="http://www.nike.com/nikeplus">Nike+ equipment</a> and put it into a usable form.
</p>
<blockquote>
There is no official API that allows you to use the raw data. Nevertheless the data are sent to the Flash via XML so there is a chance to use them. For PHP Rasmus Lerdorf himself has <a href="http://lerdorf.com/php/nikeplus.phps">implemented a class</a> to access these data. The class allows to authenticate a user and fetch the running data of a user in a XML-Format
</blockquote>
<p>
She gives an example of it in action - simple creation of an object then a call with the username and password. Behind the scenes, the data is pulled in and dropped into a SimpleXML object that includes total distance, total calories burned and data on the most recent run.
</p>]]></description>
      <pubDate>Thu, 15 May 2008 10:26:40 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[IBM developerWorks: The future of PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/10148</guid>
      <link>http://www.phpdeveloper.org/news/10148</link>
      <description><![CDATA[<p>
In a <a href="http://www.ibm.com/developerworks/opensource/library/os-php-future/index.html?ca=drs-tp1908">new post</a> on the IBM developerWorks page, <i>Nathan Good</i> takes a look at some of the features of the up and coming versions of the PHP language including things like namespaces, changes in the XML handling and a few things taken out.
</p>
<blockquote>
PHP's next edition, V6, includes new features and syntax improvements that will make it easier to use from an object-oriented standpoint. Other important features, such as Unicode support in many of the core functions, mean that PHP V6 is positioned for better international support and robustness.
</blockquote>
<p>
New features <a href="http://www.ibm.com/developerworks/opensource/library/os-php-future/index.html?ca=drs-tp1908">he mentions</a> include namespace support, improvements to the native Unicode support as well as a few of the things that will be permanently retired like the php.ini settings for magic_quotes and register_globals.
</p>]]></description>
      <pubDate>Fri, 09 May 2008 07:55:54 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Markus Wolff's Blog: Fulltext search as a webservice]]></title>
      <guid>http://www.phpdeveloper.org/news/10134</guid>
      <link>http://www.phpdeveloper.org/news/10134</link>
      <description><![CDATA[<p>
In a <a href="http://blog.wolff-hamburg.de/archives/22-Fulltext-search-as-a-webservice.html">recent blog entry</a> about a fulltext searching solution, <i>Markus Wolff</i> hacked together in a few hours with Zend_Search_Lucene:
</p>
<blockquote>
While working at some really old code that provided a fulltext search feature, I was at one point incredibly pissed rather unsatisfied due to the fact that said code resisted all attempts to debug it. This lead to the decision to sit down on a rainy weekend to try if I couldn't come up with something more useful, and most importantly, scalable.
</blockquote>
<p>
<a href="http://blog.wolff-hamburg.de/archives/22-Fulltext-search-as-a-webservice.html">His method</a> allowed for separation between the indexing and the main app and how he changes some of his methods when he learned that <a href="http://lucene.apache.org/solr/">Solr</a> did something very similar. He also lays out some example XML content and how it's handled in his script (via a SimpleXML object).
</p>]]></description>
      <pubDate>Wed, 07 May 2008 12:57:47 -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[Stefan Priebsch's Blog: PHPUnit test and Code Coverage Statistics with phing]]></title>
      <guid>http://www.phpdeveloper.org/news/10017</guid>
      <link>http://www.phpdeveloper.org/news/10017</link>
      <description><![CDATA[<p>
<i>Stefan Priebsch</i> has posted <a href="http://inside.e-novative.de/archives/114-PHPUnit-test-and-Code-Coverage-Statistics-with-phing.html">an example</a> of how he uses PHPUnit "manually" to reduce the overhead (and added complexity) of calling <a href="http://phing.info/trac/">phing</a>.
</p>
<blockquote>
Instead of instantiating PHPUnit from phing, I use the command line interface to call PHPUnit. This decouples phing and PHPUnit, which should cause less problems with version updates in the future. To configure PHPUnit, phing creates a temporary XML configuration file which is deleted after PHPUnit has finished.
</blockquote>
<p>
The source is <a href="http://inside.e-novative.de/archives/114-PHPUnit-test-and-Code-Coverage-Statistics-with-phing.html">included in the post</a> - it manually builds the XML file needed for phing to do its job.
</p>]]></description>
      <pubDate>Tue, 22 Apr 2008 14:15:18 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[MSBWare.com: XML to Array]]></title>
      <guid>http://www.phpdeveloper.org/news/9967</guid>
      <link>http://www.phpdeveloper.org/news/9967</link>
      <description><![CDATA[<p>
<i>Michael</i> has posted <a href="http://www.msbware.com/articles/scripts/xml_to_array.html">a simple script</a> today that takes in XML data and spits back out an array on the other side:
</p>
<blockquote>
The function takes the specified XML data (which must be in valid XML format) and converts into an array.  Any attributes in the XML elements are dropped an only the element values are placed in the array.
</blockquote>
<p>
<a href="http://www.msbware.com/articles/scripts/xml_to_array.html">The code</a> uses a combination of XPath, DOM, and regular expressions to parse the given XML content.
</p>]]></description>
      <pubDate>Mon, 14 Apr 2008 10:23:11 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[DevShed: Parsing Child Nodes with the DOM XML extension in PHP 5]]></title>
      <guid>http://www.phpdeveloper.org/news/9928</guid>
      <link>http://www.phpdeveloper.org/news/9928</link>
      <description><![CDATA[<p>
<i>Alejandro Gervasio</i> has finished up his series on DevShed looking at working with the DOM extension in PHP5 with <A href="http://www.devshed.com/c/a/PHP/Parsing-Child-Nodes-with-the-DOM-XML-extension-in-PHP-5/">this new article</a>, a look at parsing child nodes.
</p>
<blockquote>
In this last chapter of the series, I'm going to teach you how to handle the child nodes of an XML document by way of two simple methods, called hasChildNode() and removeChild() respectively. So let's not waste any more time in preliminaries and learn how to use them in a helpful way.
</blockquote>
<p>
They <a href="http://www.devshed.com/c/a/PHP/Parsing-Child-Nodes-with-the-DOM-XML-extension-in-PHP-5/1/">review</a> some of the concepts mentioned previously before moving ahead to the use of the <a href="http://www.devshed.com/c/a/PHP/Parsing-Child-Nodes-with-the-DOM-XML-extension-in-PHP-5/2/">hasChildNodes</a> and <a href="http://www.devshed.com/c/a/PHP/Parsing-Child-Nodes-with-the-DOM-XML-extension-in-PHP-5/3/">removeChild</a> methods to check for children and get rid of only certain ones.
</p>]]></description>
      <pubDate>Tue, 08 Apr 2008 09:47:48 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[IBM developerWorks: Use an XML database in PHP and Java applications]]></title>
      <guid>http://www.phpdeveloper.org/news/9904</guid>
      <link>http://www.phpdeveloper.org/news/9904</link>
      <description><![CDATA[<p>
The IBM developerWorks site has <a href="http://www.ibm.com/developerworks/edu/x-dw-x-xmldbjavaphp.html?S_TACT=105AGX44&S_CMP=HP">posted a tutorial</a> (you'll need to log in) showing how to use native XML databases to speed up development time for your applications.
</p>
<blockquote>
Native XML databases have grown in popularity along with XML, because data is stored as native XML, rather than through tables in a traditional database. Using a native XML database means that a change to the schema requires minimal changes to your code and no change to the database. PHP and Java developers can benefit greatly from using native XML databases
</blockquote>
<p>
IT talks about how to connect to the database (in this case DB2), grab the XML data via a query and how to insert information back in via a web-based form. There's also an example showing how to make a "search" on the data and how to change the schema of the database on the fly as well.
</p>]]></description>
      <pubDate>Thu, 03 Apr 2008 09:33:36 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[DevShed: Accessing Attributes and Cloning Nodes with the DOM XML Extension in PHP 5]]></title>
      <guid>http://www.phpdeveloper.org/news/9891</guid>
      <link>http://www.phpdeveloper.org/news/9891</link>
      <description><![CDATA[<p>
DevShed continues their series about working with XML in PHP's DOM extension with <a href="http://www.devshed.com/c/a/PHP/Accessing-Attributes-and-Cloning-Nodes-with-the-DOM-XML-Extension-in-PHP-5/">this new tutorial</a> posted today showing how to get at attributes for tags and cloning nodes from others.
</p>
<blockquote>
You've probably realized that the DOM XML library can be pretty useful when working with web documents. However, this extension includes some other methods, which can be utilized to parse attributes of a given XML string, as well as to clone nodes.
</blockquote>
<p>
They show how to use the <a href="http://www.devshed.com/c/a/PHP/Accessing-Attributes-and-Cloning-Nodes-with-the-DOM-XML-Extension-in-PHP-5/1/">getAttributes</a> method, <a href="http://www.devshed.com/c/a/PHP/Accessing-Attributes-and-Cloning-Nodes-with-the-DOM-XML-Extension-in-PHP-5/2/">hasAttribue</a> method and <a href="http://www.devshed.com/c/a/PHP/Accessing-Attributes-and-Cloning-Nodes-with-the-DOM-XML-Extension-in-PHP-5/3/">cloneNode</a> method to work with their XML examples.
</p>]]></description>
      <pubDate>Tue, 01 Apr 2008 15:11:43 -0500</pubDate>
    </item>
  </channel>
</rss>
