<?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>Stevedev Inc. &#187; PHP</title>
	<atom:link href="http://stevedev.com/category/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://stevedev.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Thu, 11 Mar 2010 20:31:40 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Zend Framework + Doctrine + ExtJS</title>
		<link>http://stevedev.com/2010/01/05/zend-framework-doctrine-extjs/</link>
		<comments>http://stevedev.com/2010/01/05/zend-framework-doctrine-extjs/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 03:35:35 +0000</pubDate>
		<dc:creator>Steve Thompson</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[doctrine orm]]></category>
		<category><![CDATA[extjs]]></category>
		<category><![CDATA[zend framework]]></category>

		<guid isPermaLink="false">http://stevedev.com/?p=65</guid>
		<description><![CDATA[I started working on a new project today, which I hope to write about as I work through the different parts and challenges presented. I&#8217;m developing the project in PHP using Zend Framework with Doctrine ORM for the database layer. I&#8217;ve used ZF for a few projects now and it just keeps getting better and [...]]]></description>
			<content:encoded><![CDATA[<p>I started working on a new project today, which I hope to write about as I work through the different parts and challenges presented. I&#8217;m developing the project in PHP using <a href="http://framework.zend.com">Zend Framework</a> with <a href="http://www.doctrine-project.org/">Doctrine ORM </a>for the database layer. I&#8217;ve used ZF for a few projects now and it just keeps getting better and more mature. I&#8217;ve been reading about Doctrine ORM and read a few <a href="http://dev.juokaz.com/php/zend-framework-and-doctrine-part-1">articles</a> about integrating it with ZF and so far it&#8217;s been really good, although I&#8217;ve just barely scratched the surface.</p>
<p>The frontend of the project is going to just use the Zend Application MVC tool, but for the backend I&#8217;m using <a href="http://www.extjs.org">ExtJS</a>. I&#8217;ve been a fan of ExtJS and used it for a few projects now but this time I&#8217;m trying something new &#8211; I&#8217;m using Zend_Json_Server to provide the data directly to ExtJS. I&#8217;m still working out how it works, but basically you create the objects on the backend, enable Zend_Json_Server and then your objects and methods are available right within the Ext.Direct and Ext.DataStore objects. Very slick. Once I&#8217;ve figured it out more I&#8217;ll post some links to the resources that helped me the most.</p>
<p>Also, it seems that everytime I log into WP there is a software update&#8230; maybe I need to post more.</p>
]]></content:encoded>
			<wfw:commentRss>http://stevedev.com/2010/01/05/zend-framework-doctrine-extjs/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>PHP Frameworks Review</title>
		<link>http://stevedev.com/2009/09/10/php-frameworks-review/</link>
		<comments>http://stevedev.com/2009/09/10/php-frameworks-review/#comments</comments>
		<pubDate>Thu, 10 Sep 2009 23:50:40 +0000</pubDate>
		<dc:creator>Steve Thompson</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://stevedev.com/?p=46</guid>
		<description><![CDATA[Over the last couple of weeks I&#8217;ve been able to work on projects using Zend Framework, CakePHP, and CodeIgniter. These are just a few of my own thoughts on the different frameworks.
CakePHP
Not a huge fan. My understanding is that CakePHP spawned from a desire to replicate the Ruby on Rails movement in PHP. My experience [...]]]></description>
			<content:encoded><![CDATA[<p>Over the last couple of weeks I&#8217;ve been able to work on projects using Zend Framework, CakePHP, and CodeIgniter. These are just a few of my own thoughts on the different frameworks.</p>
<h3>CakePHP</h3>
<p>Not a huge fan. My understanding is that CakePHP spawned from a desire to replicate the Ruby on Rails movement in PHP. My experience though is that it is slow and poorly documented. They try to get you to do things their way and I&#8217;m just not a big fan of that. I can understand trying to standardize for the sake of rapid development, but then you are stuck with development methods which work for small scale projects and not large complicated ones.</p>
<h3>Zend Framework</h3>
<p>This is the framework I&#8217;ve had the most experience. It&#8217;s got great documentation and a very active community. It does have the biggest learning curve though. While it&#8217;s true that ZF was more of a library in the past, they&#8217;ve made great strides to provide an application framework and a pretty decent one at that. It&#8217;s flexible and extensible. You can quickly whip up a small project and the system is adaptable enough that you can also build out large scalable projects.</p>
<h3>CodeIgniter</h3>
<p>CI is a great choice for those who don&#8217;t want to deal with the learning curve of ZF. It&#8217;s fast, well documented and has a great development community. It&#8217;s supported by a great company who has done a great job developing and promoting the framework. After working with CakePHP it felt refreshing to work with CI. Things were cleaner, faster, and just made more sense to me.</p>
<h3>Summary</h3>
<p>You can probably tell that I&#8217;m not a CakePHP fan. If I hadn&#8217;t picked up ZF for a few projects earlier in the year I probably would use CodeIgniter for everything. It&#8217;s still a bit of a toss up.</p>
]]></content:encoded>
			<wfw:commentRss>http://stevedev.com/2009/09/10/php-frameworks-review/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Working With Legacy Code &#8211; magic_quotes_gpc</title>
		<link>http://stevedev.com/2009/07/14/working-with-legacy-code-magic_quotes_gpc/</link>
		<comments>http://stevedev.com/2009/07/14/working-with-legacy-code-magic_quotes_gpc/#comments</comments>
		<pubDate>Tue, 14 Jul 2009 14:06:00 +0000</pubDate>
		<dc:creator>Steve Thompson</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[hacks]]></category>

		<guid isPermaLink="false">http://stevedev.com/?p=24</guid>
		<description><![CDATA[Sometimes you have to work with legacy code and you don't have the budget to refactor it to remove practices that are deprecated. magic_quotes_gpc was a setting that was turned on for a lot of PHP 4 installations but it is now no longer a best practice to have it on.]]></description>
			<content:encoded><![CDATA[<p>Sometimes you have to work with legacy code and you don&#8217;t have the budget to refactor it to remove practices that are deprecated. magic_quotes_gpc was a setting that was turned on for a lot of PHP 4 installations but it is now no longer a best practice to have it on. If you aren&#8217;t sure what that is, it automatically adds slashes or quotes data that comes in to PHP via cookies or a GET or POST HTTP request.</p>
<p>The PHP website has a good method of stripping out those slashes if you are unable to turn off magic_quotes_gpc (<a href="http://ca3.php.net/manual/en/security.magicquotes.disabling.php">http://ca3.php.net/manual/en/security.magicquotes.disabling.php</a>). But what if you need it on to run your legacy code? Here is the inverse of the solution that is provided on the PHP website:</p>
<pre>if (!get_magic_quotes_gpc()) {
	function addslashes_deep($value)
	{
		$value = is_array($value) ?
		array_map('addslashes_deep', $value) :
		addslashes($value);
		return $value;
	}

	$_POST = array_map('addslashes_deep', $_POST);
	$_GET = array_map('addslashes_deep', $_GET);
	$_COOKIE = array_map('addslashes_deep', $_COOKIE);
	$_REQUEST = array_map('addslashes_deep', $_REQUEST);
}
</pre>
<p>Put that at the beginning of your script and it will add all of the slashes back in. Not ideal, but if you have no other option it will get you going again.</p>
]]></content:encoded>
			<wfw:commentRss>http://stevedev.com/2009/07/14/working-with-legacy-code-magic_quotes_gpc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
