<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The Blog of Darryl E. Clarke &#187; PHP</title>
	<atom:link href="http://darrylclarke.com/category/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://darrylclarke.com</link>
	<description>Random musings from a jaded coder who just needs a hug.</description>
	<lastBuildDate>Mon, 21 May 2012 01:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>The Switch: Apache + Mod_PHP to Nginx + PHP-FPM</title>
		<link>http://darrylclarke.com/2011/12/22/the-switch-apache-mod_php-to-nginx-php-fpm/</link>
		<comments>http://darrylclarke.com/2011/12/22/the-switch-apache-mod_php-to-nginx-php-fpm/#comments</comments>
		<pubDate>Thu, 22 Dec 2011 17:29:43 +0000</pubDate>
		<dc:creator>Darryl Clarke</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://darrylclarke.com/?p=713</guid>
		<description><![CDATA[<div style="display:inline;float:right;margin-left:1em"><g:plusone href="http://darrylclarke.com/2011/12/22/the-switch-apache-mod_php-to-nginx-php-fpm/"></g:plusone></div>
File this under &#8220;another thing I should&#8217;ve done ages ago.&#8221; I decided that I should explore the world of Nginx as a web server since many people have been telling me it&#8217;s good. And all I can say is holy shit, it&#8217;s good. The setup was simple and after a few idiotic mistakes on my [...]]]></description>
		<wfw:commentRss>http://darrylclarke.com/2011/12/22/the-switch-apache-mod_php-to-nginx-php-fpm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Just a Log</title>
		<link>http://darrylclarke.com/2010/11/27/just-a-log/</link>
		<comments>http://darrylclarke.com/2010/11/27/just-a-log/#comments</comments>
		<pubDate>Sat, 27 Nov 2010 17:57:02 +0000</pubDate>
		<dc:creator>Darryl Clarke</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Randomness]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[configuration]]></category>
		<category><![CDATA[ideas]]></category>
		<category><![CDATA[logging]]></category>
		<category><![CDATA[production]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://darrylclarke.com/?p=576</guid>
		<description><![CDATA[<div style="display:inline;float:right;margin-left:1em"><g:plusone href="http://darrylclarke.com/2010/11/27/just-a-log/"></g:plusone></div>
Applications, especially ones that run over and over again with zero persistancy (of the application itself) like a web app needs logging. It&#8217;s important to be able to log different types of messages to different places and fortunately Zend_Log is so extensible that it can log to almost anything you can think of. My typically [...]]]></description>
		<wfw:commentRss>http://darrylclarke.com/2010/11/27/just-a-log/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Queueing With Zend Queue and MemcacheQ</title>
		<link>http://darrylclarke.com/2010/11/18/queueing-with-zend-queue-and-memcacheq/</link>
		<comments>http://darrylclarke.com/2010/11/18/queueing-with-zend-queue-and-memcacheq/#comments</comments>
		<pubDate>Fri, 19 Nov 2010 01:23:48 +0000</pubDate>
		<dc:creator>Darryl Clarke</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[queue]]></category>

		<guid isPermaLink="false">http://darrylclarke.com/?p=573</guid>
		<description><![CDATA[<div style="display:inline;float:right;margin-left:1em"><g:plusone href="http://darrylclarke.com/2010/11/18/queueing-with-zend-queue-and-memcacheq/"></g:plusone></div>
I was bored last night so I thought I&#8217;d enhance one of my applications with a little bit of Queueing. (And for the record both Queueing and Queuing are valid spellings depending on your locale) The concept is fairly straight forward. Normally when a web application runs, it runs in a linear pattern. It starts, [...]]]></description>
		<wfw:commentRss>http://darrylclarke.com/2010/11/18/queueing-with-zend-queue-and-memcacheq/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Tell Your Redirector How to Do It&#8217;s Job</title>
		<link>http://darrylclarke.com/2010/10/17/tell-your-redirector-how-to-do-its-job/</link>
		<comments>http://darrylclarke.com/2010/10/17/tell-your-redirector-how-to-do-its-job/#comments</comments>
		<pubDate>Sun, 17 Oct 2010 17:50:14 +0000</pubDate>
		<dc:creator>Darryl Clarke</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[redirect]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[tip]]></category>

		<guid isPermaLink="false">http://darrylclarke.com/?p=569</guid>
		<description><![CDATA[<div style="display:inline;float:right;margin-left:1em"><g:plusone href="http://darrylclarke.com/2010/10/17/tell-your-redirector-how-to-do-its-job/"></g:plusone></div>
There&#8217;s a big difference between a redirect that uses a 301 and a 302 code on a website. If you don&#8217;t know the difference, you should find out. 301 says &#8220;This stuff has moved permanently and you shouldn&#8217;t come here anymore.&#8221; 302 says &#8220;You just need to go here, but this place will still answer [...]]]></description>
		<wfw:commentRss>http://darrylclarke.com/2010/10/17/tell-your-redirector-how-to-do-its-job/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Database Profiling with Zend Db Profiler Firebug</title>
		<link>http://darrylclarke.com/2010/10/06/database-profiling-with-zend-db-profiler-firebug/</link>
		<comments>http://darrylclarke.com/2010/10/06/database-profiling-with-zend-db-profiler-firebug/#comments</comments>
		<pubDate>Thu, 07 Oct 2010 03:18:35 +0000</pubDate>
		<dc:creator>Darryl Clarke</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[db]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[profiler]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://darrylclarke.com/?p=556</guid>
		<description><![CDATA[<div style="display:inline;float:right;margin-left:1em"><g:plusone href="http://darrylclarke.com/2010/10/06/database-profiling-with-zend-db-profiler-firebug/"></g:plusone></div>
I don&#8217;t know why I haven&#8217;t been using this for ages. But Zend&#8217;s DB Profiler is fun. Only to be used in development so you can see what your database is doing and how fast/slow it&#8217;s doing it. Enable it in your application&#8217;s config.ini (or .xml) [development] db.profiler.enabled = true db.profiler.class   = "Zend_Db_Profiler_Firebug" And as [...]]]></description>
		<wfw:commentRss>http://darrylclarke.com/2010/10/06/database-profiling-with-zend-db-profiler-firebug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Quickest Way To Tweet via Zend Framework&#8217;s Twitter Service</title>
		<link>http://darrylclarke.com/2010/09/26/the-quickest-way-to-tweet-via-zend-frameworks-twitter-service/</link>
		<comments>http://darrylclarke.com/2010/09/26/the-quickest-way-to-tweet-via-zend-frameworks-twitter-service/#comments</comments>
		<pubDate>Sun, 26 Sep 2010 18:01:46 +0000</pubDate>
		<dc:creator>Darryl Clarke</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[service]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://darrylclarke.com/?p=545</guid>
		<description><![CDATA[<div style="display:inline;float:right;margin-left:1em"><g:plusone href="http://darrylclarke.com/2010/09/26/the-quickest-way-to-tweet-via-zend-frameworks-twitter-service/"></g:plusone></div>
This is a quick and dirty method.  It assumes a couple of things. You&#8217;ve already created your &#8216;app&#8217; on twitter. You&#8217;ve already gotten your personal OAuth tokens from twitter. First you need to setup your tokens; $token = new Zend_Oauth_Token_Access(); $token-&#62;setToken("YOUR_PERSONAL_TOKEN")       -&#62;setTokenSecret("YOUR_PERSONAL_SECRET"); Second, you need to setup the Zend_Service_Twitter using your access token as [...]]]></description>
		<wfw:commentRss>http://darrylclarke.com/2010/09/26/the-quickest-way-to-tweet-via-zend-frameworks-twitter-service/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Typecasting with double-not (!!) vs. (bool)</title>
		<link>http://darrylclarke.com/2010/06/01/typecasting-with-double-not-vs-bool/</link>
		<comments>http://darrylclarke.com/2010/06/01/typecasting-with-double-not-vs-bool/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 03:51:53 +0000</pubDate>
		<dc:creator>Darryl Clarke</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://darrylclarke.com/?p=332</guid>
		<description><![CDATA[<div style="display:inline;float:right;margin-left:1em"><g:plusone href="http://darrylclarke.com/2010/06/01/typecasting-with-double-not-vs-bool/"></g:plusone></div>
I was asked a strange question today.  &#8220;What&#8217;s return !! $row; do?&#8221; And I had never really been witness to the syntax of the double-not &#8216;!!&#8217; because really, to me, it&#8217;s a bit strange and contradictory for the coding styles I&#8217;m used to.  So I looked it up a bit more to see if it [...]]]></description>
		<wfw:commentRss>http://darrylclarke.com/2010/06/01/typecasting-with-double-not-vs-bool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dictionary APIs are Fun.</title>
		<link>http://darrylclarke.com/2010/03/19/dictionary-apis-are-fun/</link>
		<comments>http://darrylclarke.com/2010/03/19/dictionary-apis-are-fun/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 22:01:02 +0000</pubDate>
		<dc:creator>Darryl Clarke</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[dictionary]]></category>
		<category><![CDATA[words]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://darrylclarke.com/?p=290</guid>
		<description><![CDATA[<div style="display:inline;float:right;margin-left:1em"><g:plusone href="http://darrylclarke.com/2010/03/19/dictionary-apis-are-fun/"></g:plusone></div>
As part of my Hangman! application on Facebook, I plan on adding word definitions.  Like any good word app, it should tell you what the word means.  I&#8217;m not a big fan of sending off users to other sites when I don&#8217;t have to, so I looked into some dictionary APIs. These APIs are hard [...]]]></description>
		<wfw:commentRss>http://darrylclarke.com/2010/03/19/dictionary-apis-are-fun/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ZF Tip: Don&#8217;t use &#8216;index&#8217; as a module name.</title>
		<link>http://darrylclarke.com/2009/12/13/zf-tip-dont-use-index-as-a-module-name/</link>
		<comments>http://darrylclarke.com/2009/12/13/zf-tip-dont-use-index-as-a-module-name/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 02:07:52 +0000</pubDate>
		<dc:creator>Darryl Clarke</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[fun]]></category>
		<category><![CDATA[pointless]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://darrylclarke.com/?p=269</guid>
		<description><![CDATA[<div style="display:inline;float:right;margin-left:1em"><g:plusone href="http://darrylclarke.com/2009/12/13/zf-tip-dont-use-index-as-a-module-name/"></g:plusone></div>
I&#8217;ve been using Zend Framework for a while and when I do my own sites things always work as expected.  But a couple of times in the past I&#8217;ve had the honor of working on other sites with other people that have lead me to a few &#8216;wtf?&#8217; issues. The most recent one was as [...]]]></description>
		<wfw:commentRss>http://darrylclarke.com/2009/12/13/zf-tip-dont-use-index-as-a-module-name/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>All I Need is REST, Vimeo, Flickr, Zend and More</title>
		<link>http://darrylclarke.com/2009/07/12/all-i-need-is-rest-vimeo-flickr-zend-and-more/</link>
		<comments>http://darrylclarke.com/2009/07/12/all-i-need-is-rest-vimeo-flickr-zend-and-more/#comments</comments>
		<pubDate>Sun, 12 Jul 2009 18:18:45 +0000</pubDate>
		<dc:creator>Darryl Clarke</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[flickr]]></category>
		<category><![CDATA[free software]]></category>
		<category><![CDATA[interface]]></category>
		<category><![CDATA[rest]]></category>
		<category><![CDATA[restful]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[vimeo]]></category>

		<guid isPermaLink="false">http://darrylclarke.com/?p=208</guid>
		<description><![CDATA[<div style="display:inline;float:right;margin-left:1em"><g:plusone href="http://darrylclarke.com/2009/07/12/all-i-need-is-rest-vimeo-flickr-zend-and-more/"></g:plusone></div>
Here&#8217;s my skeleton for my magical REST interface. It&#8217;s still missing a lot of method calls for Flickr and Vimeo, but the guts are there and the remaining methods will be done in priority when I need them.  Right now it supports automatic caching and logging via simple options. At some point I&#8217;ll probably put [...]]]></description>
		<wfw:commentRss>http://darrylclarke.com/2009/07/12/all-i-need-is-rest-vimeo-flickr-zend-and-more/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

