<?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, 22 May 2013 03:55:34 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Dayle Rees: Composer primer]]></title>
      <guid>http://www.phpdeveloper.org/news/19462</guid>
      <link>http://www.phpdeveloper.org/news/19462</link>
      <description><![CDATA[<p>
For those that might have heard about the <a href="http://getcomposer.org">Composer</a> package management system for PHP but haven't had the time to get into it, you should definitely check out <a href="http://daylerees.com/composer-primer">this great primer</a> from <i>Dayle Rees</i>.
</p>
<blockquote>
Composer is something special in the world of PHP. It has changed the way we handle application dependencies, and quelled the tears of many PHP developers. You see, in the olden days, when you wanted to build an application that relied on third party dependencies you would have to install them with PEAR or PECL. These two dependency managers both have a very limited set of outdated dependencies and have been a thorn in the side of PHP developers for a long time. [...] Enter composer, king of the package managers. 
</blockquote>
<p>
He jumps right in and gets into the configuration (the composer.json file) and using it to describe the package. He shows how to set up "required" resources complete with version number information. There's a bit about setting up autoloading and classmaps too. He then moves on to getting the tool installed and using the composer.json definition to load in needed packages (and development ones if needed).
</p>
Link: http://daylerees.com/composer-primer]]></description>
      <pubDate>Mon, 15 Apr 2013 12:55:09 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Michael Nitschinger's Blog: A primer on PHP exceptions]]></title>
      <guid>http://www.phpdeveloper.org/news/17994</guid>
      <link>http://www.phpdeveloper.org/news/17994</link>
      <description><![CDATA[<p>
<i>Michael Nitschinger</i> has a new post focusing on one of the more commonly used, but maybe just as commonly misunderstood, part of PHP - <a href="http://nitschinger.at/A-primer-on-PHP-exceptions">exceptions and their handling</a>. His latest post looks at what Exceptions in PHP have to offer and provides some "best practices" in their use.
</p>
<blockquote>
Exceptions are and should be an integral part of any general purpose programming language. PHP introduced them long ago (with the release of PHP 5 or 5.1), but it still seems that many of the concepts are not fully understood or ignored by the community. This post aims to be a solid introduction to exception architecture, handling and testing. At the end of the post you should be able to know when to raise an exception and how it should look like.
</blockquote>
<p>
He talks about situations when (and when not) to use exceptions, normalizing them for easier try/catch-ing and includes the exception class hierarchy, including the types pulled from the <a href="http://php.net/spl">SPL</a>. He shows examples (based on the <a href="http://lithify.me/">Lithium</a> framework's namespacing)  how to create "namespaced exceptions" and how to use these in a bit of sample code. He also mentions the use of the custom <a href="http://us.php.net/manual/en/class.errorexception.php">error handling with the ErrorException</a> as well as a quick look at testing these basic and custom exceptions correctly (PHPUnit-based tests).
</p>]]></description>
      <pubDate>Wed, 23 May 2012 09:17:41 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPBuilder.com: A Primer On Postgres Exception Handling For The PHP Developer, Part 2]]></title>
      <guid>http://www.phpdeveloper.org/news/9060</guid>
      <link>http://www.phpdeveloper.org/news/9060</link>
      <description><![CDATA[<p>
PHPBuilder.com has <a href="http://www.phpbuilder.com/columns/robert_bernier20071115.php3">posted part two</a> of a series they're working through introducing PHP developers to the world of exception handling in the Postgres database.
</p>
<blockquote>
Last week we left off with an example where notice, exception and log levels are sent to the client. This week we present more POSTGRES exception examples, and continue with our article on Postgres exception handling.
</blockquote>
<p>
They create a few examples:
</p>
<ul>
<li>handling other error conditions with OTHERS
<li>using f_ex2
<li>returning NO_DATA_FOUND and TOO_MANY_ROWS
<li>handling exceptions like table constraints
<li>nested exceptions
<li>using f_ex5
<li>a RAISE EXCEPTION dilemma
<li>using f_ext1
</ul>]]></description>
      <pubDate>Fri, 16 Nov 2007 09:35:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Zend Developer Zone: L10N==Localization (See there are ten letters...Oh, you get it...OK)]]></title>
      <guid>http://www.phpdeveloper.org/news/5553</guid>
      <link>http://www.phpdeveloper.org/news/5553</link>
      <description><![CDATA[<quote>
<i>
Internationalization and Localization are concepts that all web sites and applications will have to deal with at some point. Why not design it form the start? Most people just don't think about it but in an increasingly global society, you need to. The earlier you design for it, the easier it is to do.
</i>
</quote>
<p>
They continue on in <a href="http://devzone.zend.com/node/view/id/516">this post</a> on the Zend Developer Zone with a resource to get you thinking - an <a href="http://www.digital-web.com/articles/internationalization_primer/">Internationalization Primer</a> from <i>Johnathan Snook</i> (as printed in Digital Web Magazine). He looks at the basics you'll need to know when putting in multi-language support, including database designs and precompiling.
</p>]]></description>
      <pubDate>Fri, 09 Jun 2006 06:57:37 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPBuilder.com: Using XML - A PHP Developer's Primer, Part 4 (Subpart 2)]]></title>
      <guid>http://www.phpdeveloper.org/news/5246</guid>
      <link>http://www.phpdeveloper.org/news/5246</link>
      <description><![CDATA[<p>
PHPBuilder.com has continued their "PHP Developer's Primer" series covering the various uses of XML in PHP with <A href="http://www.phpbuilder.com/columns/adam_delves20060417_Part2.php3">this new tutorial</a>, part two of their "XML-RPC, PHP, and Javascript" coverage.
</p>
<p>
Continuing with the code developed in <a href="http://www.phpbuilder.com/columns/adam_delves20060417.php3">part one</a>, they work on creating the PHP server side of things, showing the code to respond to the connections, validate the email address sent, and how to use Javascript to make a connection and call the server.
</p>
<p>
By <a href="http://www.phpbuilder.com/columns/adam_delves20060417_Part2.php3?page=2">the end</a>, you'll have a set of scripts that can ship off an email address to be validated on the server-side with the help of some handy Javascript and a simple backend connection.
</p>]]></description>
      <pubDate>Wed, 26 Apr 2006 16:41:13 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPBuilder.com: Using XML - A PHP Developer's Primer (Part 3)]]></title>
      <guid>http://www.phpdeveloper.org/news/5041</guid>
      <link>http://www.phpdeveloper.org/news/5041</link>
      <description><![CDATA[For those of you that have been following along, PHPBuilder.com has posted the <a href="http://www.phpbuilder.com/columns/adam_delves20060322.php3">third and final part</a> of their "Using XML: A PHP Developer's Primer" series. Even if you haven't been keeping up, it's worth a look.
<p>
In <a href="http://www.phpbuilder.com/columns/adam_delves20060322.php3">this edition</a>, they look at more advanced topics - a deeper look at Ajax and how to style the data you get back with XSL, both on the client and sever.
<p>
To start, they look at XSL - what it is, how it's used, and some code examples of both the XML and XSL structures to style XML data into a valid HTML page. Of course, you'll need the PHP extension to get this all working, so they step you through the installation/enabling of that as well.
<p>
They <a href="http://www.phpbuilder.com/columns/adam_delves20060322.php3">touch on other topics</a> (like passing variables to a stylehseet and XSLT in Javascript) before getting to a simple XSLT and Ajax example - pulling book data and formating it with examples of both the PHP and Javascript sides.]]></description>
      <pubDate>Fri, 24 Mar 2006 07:04:06 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[SitePoint PHP Blog: PHP ZH Round One]]></title>
      <guid>http://www.phpdeveloper.org/news/5000</guid>
      <link>http://www.phpdeveloper.org/news/5000</link>
      <description><![CDATA[With a round-up of the first PHP Zurich meeting, <i>Harry Fuecks</i> has posted <a href="http://www.sitepoint.com/blogs/2006/03/15/php-zh-round-one/">this new item</a> on the SitePoint PHP Blog with all of the details.
<p>
<quote>
<i>
<a href="http://zh.phpug.ch/meetings/20060314">Yesterday's</a> first meeting worked out pretty well, to the point where I needed a quiet morning. Good turnout for the kick off thanks to everyone that made it and especially to <a href="http://blog.bitflux.ch/">Christian</a> for providing space.
<p>
Security Primer talk now online <a href="http://zh.phpug.ch/_media/meetings/phpsecprimer.pdf?id=meetings%3A20060314&cache=cache">here</a> (PDF). Also a couple of <a href="http://blog.bitflux.ch/archive/2006/03/14/zh-phpug-ch-meeting-now.html">snaps</a> from Christian.
</i>
</quote>
<p>
There's <a href="http://www.sitepoint.com/blogs/2006/03/15/php-zh-round-one/">some talk</a> of the "rebranding" they might be doing for the group as well as some discussion on the location for the next meeting.]]></description>
      <pubDate>Thu, 16 Mar 2006 07:11:33 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPBuilder.com: Using XML - A PHP Developer's Primer, Part 2]]></title>
      <guid>http://www.phpdeveloper.org/news/4905</guid>
      <link>http://www.phpdeveloper.org/news/4905</link>
      <description><![CDATA[On PHPBuilder.com today, there's the <a href="http://www.phpbuilder.com/columns/adam_delves20060224.php3">second part</a> in their "Using XML: A PHP Developer's Primer" series.
<p>
<quote>
<i>
In the <a href="http://www.phpbuilder.com/columns/adam_delves20060206.php3">first part</a> of this series, we took a look at how PHP 5 can be used to manipulate and parse XML files. In this installment, we are going to focus on Ajax, one of the most useful and topical applications of XML.
<p>
Initially, we are going to introduce Ajax and learn how to use the XMLHTTP object provided by most modern web browsers to create a live email validation form. Then we will pick up where we left off with the theme of XML and introduce XSLT, which we will use to transform our library XML from the previous article into valid XHTML code.
</i>
</quote>
<p>
They <a href="http://www.phpbuilder.com/columns/adam_delves20060224.php3">jump immediately in</a>, starting with the "what is Ajax?" question to provide a good base. The sample application that they help you build to work up your Ajax skills is an email validation app that checks the user's entry as they're putting it in. Of course, all of the PHP and Javascript code that you'll need is provided.]]></description>
      <pubDate>Mon, 27 Feb 2006 09:22:50 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[PHP Zurich: Meeting Details - March 14th, 2006 @ 6:30pm]]></title>
      <guid>http://www.phpdeveloper.org/news/4877</guid>
      <link>http://www.phpdeveloper.org/news/4877</link>
      <description><![CDATA[The <a href="http://zh.phpug.ch/">PHP Zurich</a> group has posted the <a href="http://zh.phpug.ch/meetings/20060314?rev=1140450461">official announcment</a> for their first meeting happening March 14th.
<p>
They'll be starting at the <a href="http://zh.phpug.ch/locations/bitflux">BitFlux offices</a> and moving to <a href="http://zh.phpug.ch/locations/rossis">Rossi's</a> following.
<p>
The agenda includes a talk from <a href="http://zh.phpug.ch/members/maarten">Maarten</a> on "containers, database abstraction and applied PHP magic" and a talk from <a href="http://zh.phpug.ch/members/harryf">Harry</a> in the form of a basic PHP security primer.
<p>
If you'd like to attend, you can get this information and more from <a href="http://zh.phpug.ch">their site</a>.]]></description>
      <pubDate>Tue, 21 Feb 2006 07:14:30 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPBuilder.com: Using XML - A PHP Developer's Primer]]></title>
      <guid>http://www.phpdeveloper.org/news/4807</guid>
      <link>http://www.phpdeveloper.org/news/4807</link>
      <description><![CDATA[PHPBuilder.com has posted <a href="http://www.phpbuilder.com/columns/adam_delves20060206.php3">a new tutorial</a> targeted at those developers out there wokring to get into the XML functionality that PHP offers. They look to help (in a very general way) introduce you to the fundamentals on what XML is and how to manipulate it with what PHP has to offer.
<p>
<quote>
<i>
This series of articles will focus on XML, its applications in modern day web development and how PHP fits into this niche. In this article, we will focus specifically on the tools provided to us by PHP which enable us to manipulate XML data sources.
</i>
</quote>
<p>
They <a href="http://www.phpbuilder.com/columns/adam_delves20060206.php3">cover</a> what XML is, what it looks like, and talk about some of the simple applications that it can bse used for (in PHP or otherwise). They focus on the newer XML features of PHP - DOM, SimpleXML, and XPath. They show some of the PHP code to parse out bits from their sample XML and show how easy it is to port the DOM code over to another language (this time, Javascript). They finish things off with code examples for grabbing the same data in the other technologies - SimpleXML and XPath...]]></description>
      <pubDate>Tue, 07 Feb 2006 07:10:24 -0600</pubDate>
    </item>
  </channel>
</rss>
