<?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, 20 Jul 2008 15:07:24 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Alessandro Crugnola's Blog: AMFPHP issue referencing ByteArray]]></title>
      <guid>http://www.phpdeveloper.org/news/10587</guid>
      <link>http://www.phpdeveloper.org/news/10587</link>
      <description><![CDATA[<p>
In trying to get PHP, AMFPHP and Flash to cooperate together with ByteArray information, <i>Alessandro Crugnola</i> came across some issues:
</p>
<blockquote>
Recently I made some test in AMFPHP sending an retrieving ByteArray to be stored in a mysql blob field. But suddenly I encounter a problem when I was trying to return an array of ByteArrays and I could not find out the reason flash continued to show me [an] error.
</blockquote>
<p>
He <a href="http://www.sephiroth.it/weblog/archives/2008/07/amfphp_issue_referencing_bytearray.php">includes the offending code</a> on both the PHP and ActionScript side and his ultimate solution - a problem with AMFPHP's serializer. He's even made a <a href="http://www.sephiroth.it/weblog/archives/bytearray.patch">patch file</a> if you're seeing the same issue and want to bring your install up to date.
</p>]]></description>
      <pubDate>Fri, 11 Jul 2008 08:47:43 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Mark Kimsal's Blog: Is Your MVC MIA When it Comes to 404s?]]></title>
      <guid>http://www.phpdeveloper.org/news/10558</guid>
      <link>http://www.phpdeveloper.org/news/10558</link>
      <description><![CDATA[<p>
In a new post to his blog, <i>Michael Kimsal</i> points out a post from his brother (<i>Mark</i>) that <a href="http://cognifty.com/index.php/blog.entry/id=8/is_your_mvc_mia_when_it_comes_to_404s.html">wonders if your framework</a> handles 404 errors the best/most useful way it can.
</p>
<blockquote>
This post is about the consistency of frameworks. Consistency is key to a low learning curve. [...] Yesterday, my brother asked me how he could capture 404 errors in Cognifty, as he was building an app that relied on dealing with random URL patterns. [...] After talking for a bit, we decided that handing off the request to a standard service (or controller) was the best way to handle this type of "error". He started searching to see if other frameworks had a consistent, or at least documented, way of dealing with missing controllers.
</blockquote>
<p>
In his research he found one framework - the Zend Framework - that handed them by default as an error and passed them off to that handler. <i>Mark</i> notes that, depending on your frame of reference, this may or may not be considered a true error. 
</p>
<p>
His Cognifty framework handles things a bit differently. It allows you to change the presentation handler to redirect to another url if an error like a 404 is thrown - a technically "more correct" way of handling things.
</p>]]></description>
      <pubDate>Tue, 08 Jul 2008 07:51:20 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPFreaks.com: Debugging: A Beginner's guide]]></title>
      <guid>http://www.phpdeveloper.org/news/10374</guid>
      <link>http://www.phpdeveloper.org/news/10374</link>
      <description><![CDATA[<p>
On PHPFreaks.com there's a <a href="http://www.phpfreaks.com/tutorial/debugging-a-beginners-guide">new tutorial</a> providing a beginner's guide to debugging in PHP (with the built in functionality PHP has, not external software).
</p>
<blockquote>
Everyday the forums see probably hundreds of topics posted where the problem is a fairly simple error. [...] As a beginner, it can be difficult to find and solve these errors. By tackling each of these in turn, I hope to teach you some methods of finding and solving them.
</blockquote>
<p>
They look at the different sorts of errors - syntax errors, fatal errors, warnings, notices - as well as some of the ones a bit harder to track down like database problems and logical errors.
</p>]]></description>
      <pubDate>Tue, 10 Jun 2008 07:59:13 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Stefan Mischook's Blog: Does Wordpress 2.5.1 suck?]]></title>
      <guid>http://www.phpdeveloper.org/news/10340</guid>
      <link>http://www.phpdeveloper.org/news/10340</link>
      <description><![CDATA[<p>
On the KillerPHP blog today, <i>Stefan Mischook</i> <a href="http://www.killerphp.com/articles/wordpress-251-sucks/">comments on</a> whether or not WordPress version 2.5.1 "sucks".
</p>
<blockquote>
I just recently installed the this latest version of Wordpress (2.5.1) and quickly found it hanging (while trying to load a page) for as long as 40-50 seconds! I then proceeded to isolate the potential causes (database, custom fields, custom theme) and have since found out that something stinks in 2.5.1's core. 
</blockquote>
<p>
He details some of the steps he took to try to track down the bug - installing on another server, searching the web for others with the same issue. His suggestion?
</p>
<blockquote>
Before you upgrade your old working installation of Wordpress, I would suggest that you test 2.5.1 in some other directory just to be sure it works with your server.
</blockquote>]]></description>
      <pubDate>Wed, 04 Jun 2008 12:08:12 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[SitePoint PHP Blog: Useful in-browser development tools for PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/10172</guid>
      <link>http://www.phpdeveloper.org/news/10172</link>
      <description><![CDATA[<p>
<a href="http://www.sitepoint.com/blogs/2008/05/13/useful-in-browser-development-tools-for-php/">This new post</a> from <i>Troels Knak-Nielsen</i> on the SitePoint PHP blog shares a few helpful in-browser development tools that could come in handy in your day to day coding.
</p>
<blockquote>
While debuggers exists, there isn't much of a tradition for using them in PHP. People have largely come to rely on injecting debugging code directly into the program, for inspecting program scope.
</blockquote>
<p>
Tools mentioned include traceers and error handlers (like XDebug), some debugging parts of the popular PHP frameworks and the set of *cachegrind tools to help you parse the output of XDebug for profiling your application.
</p>]]></description>
      <pubDate>Tue, 13 May 2008 11:14:48 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Harun Yayli's Blog: oci_bind_by_name maxlength is not so optional]]></title>
      <guid>http://www.phpdeveloper.org/news/10156</guid>
      <link>http://www.phpdeveloper.org/news/10156</link>
      <description><![CDATA[<p>
<i>Harun Yayli</i> <a href="http://livebookmark.net/journal/2008/05/06/oci_bind_by_name-maxlength-is-not-so-optional/">came across</a> a slight problem in his development using the oci_bind_by_name function for one of his queries:
</p>
<blockquote>
If you think that the maxlength parameter in the documentation of oci_bind_by_name is optional, see this example and think again.
</blockquote>
<p>
His sample code gave him a "can bind a LONG value only for insert into a LONG column..." error from his Oracle database. His fix was to add that length parameter (his max column length) and all was well. One of his comments (from <i>cj</i>) helps to explain things a bit more:
</p>
<blockquote>
It makes senses that a length would be required because when the oci_bind_by_name() call is made, there is no data in $$key (a.k.a. $a, $b or $c). Without a length passed, PHP tells the DB to expect a single byte string.
</blockquote>]]></description>
      <pubDate>Fri, 09 May 2008 13:45:44 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Stefan Priebsch's Blog: Turning errors into exceptions]]></title>
      <guid>http://www.phpdeveloper.org/news/10080</guid>
      <link>http://www.phpdeveloper.org/news/10080</link>
      <description><![CDATA[<p>
In a <a href="http://inside.e-novative.de/archives/115-Turning-errors-into-exceptions.html">recent blog entry</a> <i>Stefan Priebsch</i> shows how to take an error thrown by your script and turn it into an exception (to make things like catchable fatal errors).
</p>
<blockquote>
While I would personally prefer an exception to be thrown in the first place, it is pretty easy to convert errors to exceptions in PHP.
</blockquote>
<p>
His example is pretty simple - you set a custom error handler in your script that pulls in the error information and tosses an exception based on the error number the handler is given. Then you can use the try/catch method to see if your script has tossed an exception of the fatal error type. Nice simple solution to handle an interesting little problem.
</p>]]></description>
      <pubDate>Wed, 30 Apr 2008 12:53:35 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[DevShed: Creating an Error Handling Module for a PHP 5 File Uploader]]></title>
      <guid>http://www.phpdeveloper.org/news/9895</guid>
      <link>http://www.phpdeveloper.org/news/9895</link>
      <description><![CDATA[<p>
On DevShed today, they <a href="http://www.devshed.com/c/a/PHP/Creating-an-Error-Handling-Module-for-a-PHP-5-File-Uploader/">continue their look</a> at uploading files in PHP with the addition of some error handling features for their current script.
</p>
<blockquote>
In this third tutorial of the series, I'm going to show you how to incorporate a brand new error checking module into the file uploading PHP script created in the last article.
</blockquote>
<p>
They show the basic method - uploading with <a href="http://www.devshed.com/c/a/PHP/Creating-an-Error-Handling-Module-for-a-PHP-5-File-Uploader/1/">no error checking</a> - before showing how much help adding in an error checking component to watch for things like files that are too large, invalid file choices and problems writing the file on the server side.
</p>]]></description>
      <pubDate>Wed, 02 Apr 2008 16:38:58 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[David Coallier's Blog: PHP Quebec Hindering the PHP Project development?]]></title>
      <guid>http://www.phpdeveloper.org/news/9807</guid>
      <link>http://www.phpdeveloper.org/news/9807</link>
      <description><![CDATA[<p>
On a bit more controversial note, <i>David Coallier</i> has <a href="http://blog.agoraproduction.com/index.php?/archives/63-PHP-Quebec-Hindering-the-PHP-Project-development.html">posted about</a> a rather unpleasant experience he had at this year's <a href="http://conf.phpquebec.org/">PHP Quebec</a> conference - in his own words:
</p>
<blockquote>
As many of you know, this time of the year is usually the PHP Quebec
conference and many php internals and international speakers fly to
Montreal to speak. [...] This morning (2008/13/03) I saw Lukas on IRC and we said "Hey let's meet around 1pm to discuss about the PHP TestFest"
</blockquote>
<p>
He met <i>Lukas</i> at the hotel, in the lounge of the hotel, not attending any of the talks. As he sits there talking to the others, a PHP Quebec staff member walks out and hands him a bill (for around 450 CAD) for attending the conference. After a little checking - both with fellow user group members and with the hotel staff as to the validity of this behavior, he could only assume that it was some "money driven" attempt on the PHP Quebec conference's side to get what they could.
</p>
<p>
Be sure to <a href="http://blog.agoraproduction.com/index.php?/archives/63-PHP-Quebec-Hindering-the-PHP-Project-development.html">check out the comments</a> for some other views from the community.
</p>]]></description>
      <pubDate>Mon, 17 Mar 2008 11:15:13 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Nick Halstead's Blog: Programming Tips #9 "debug_backtrace"]]></title>
      <guid>http://www.phpdeveloper.org/news/9602</guid>
      <link>http://www.phpdeveloper.org/news/9602</link>
      <description><![CDATA[<p>
<i>Nick Halstead</i> continues the "Programming Tips" series on his blog today with <a href="http://www.nickhalstead.com/2007/12/19/programming-tips-9-debug_backtrace/">tip number nine</a> (a very handy tip indeed) - using <a href="http://www.php.net/debug_backtrace">debug_backtrace</a> from <i>Larry Garfield</i>.
</p>
<blockquote>
Despite the proliferation of debugging tools, especially real-time debuggers, "debugging by print statement" remains the most common form of debugging in most programming languages.
</blockquote>
<p>
An example of its use <a href="http://www.nickhalstead.com/2007/12/19/programming-tips-9-debug_backtrace/">is included</a> by way of a debug() function that returns the message it a bit friendlier format. 
</p>]]></description>
      <pubDate>Mon, 11 Feb 2008 10:33:00 -0600</pubDate>
    </item>
  </channel>
</rss>
