<?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>Tiffany B. Brown &#187; Search Results  &#187;  codeigniter</title>
	<atom:link href="http://tiffanybbrown.com/search/codeigniter/feed/rss2/" rel="self" type="application/rss+xml" />
	<link>http://tiffanybbrown.com</link>
	<description>A web log about web development and internet culture with frequent detours into other stuff.</description>
	<lastBuildDate>Fri, 10 Feb 2012 23:35:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Links for 2010-11-12</title>
		<link>http://tiffanybbrown.com/2010/11/12/links-for-2010-11-12/</link>
		<comments>http://tiffanybbrown.com/2010/11/12/links-for-2010-11-12/#comments</comments>
		<pubDate>Fri, 12 Nov 2010 14:18:21 +0000</pubDate>
		<dc:creator>tiffany</dc:creator>
				<category><![CDATA[Link dumps]]></category>

		<guid isPermaLink="false">http://tiffanybbrown.com/?p=4772</guid>
		<description><![CDATA[CodeIgniter 2.0 &#8211; Now with more Awesome CodeIgniter drops support for PHP 4 and now requires PHP 5.1.6 or greater. An Open Letter to the White Right, On the Occasion of Your Recent, Successful Temper Tantrum Anti-racist essayist and activist Tim Wise lays a verbal smackdown on the Republican&#8217;s right-most wing while pointing out that [...]]]></description>
			<content:encoded><![CDATA[<dl>
<dt><a href="http://codeigniter.com/news/codeigniter_2.0_-_now_with_more_awesome/">CodeIgniter 2.0 &#8211; Now with more Awesome</a></dt>
<dd>CodeIgniter drops support for PHP 4 and now requires PHP 5.1.6 or greater.</dd>
<dt><a href="http://www.timwise.org/2010/11/an-open-letter-to-the-white-right-on-the-occasion-of-your-recent-successful-temper-tantrum/">An Open Letter to the White Right, On the Occasion of Your Recent, Successful Temper Tantrum</a></dt>
<dd>Anti-racist essayist and activist Tim Wise lays a verbal smackdown on the Republican&#8217;s right-most wing while pointing out that simple math and demographics suggest their race-baiting tactics won&#8217;t work much longer.</dd>
<dt><a href="http://www.miller-mccune.com/health/memo-to-the-mind-dont-wander-be-happy-25262/">Memo to the Mind: Don’t Wander, Be Happy</a></p>
<dd><q>A human mind is a wandering mind, and a wandering mind is an unhappy mind.</q> That&#8217;s the conclusion of a new study by some Harvard researchers. They could have saved themselves some money and just asked me if that&#8217;s true.</dd>
</dt>
</dl>
]]></content:encoded>
			<wfw:commentRss>http://tiffanybbrown.com/2010/11/12/links-for-2010-11-12/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CodeIgniter&#8217;s &#8220;Disallowed Key Characters&#8221; error revisited</title>
		<link>http://tiffanybbrown.com/2010/07/21/codeigniters-disallowed-key-characters-error-revisited/</link>
		<comments>http://tiffanybbrown.com/2010/07/21/codeigniters-disallowed-key-characters-error-revisited/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 16:19:53 +0000</pubDate>
		<dc:creator>tiffany</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[codeigniter]]></category>

		<guid isPermaLink="false">http://tiffanybbrown.com/?p=4402</guid>
		<description><![CDATA[Two years ago, I posted about CodeIgniter&#8216;s &#8220;Disallowed Key Characters&#8221; error message, and one possible cause. Recently, I stumbled across another cause: disallowed characters in a POST array. In my case, I had single-quotes as part of the variable name. My fingers mixed up PHP array syntax and HTML form syntax. &#60;!-- will cause the [...]]]></description>
			<content:encoded><![CDATA[<p>Two years ago, I posted about <a href="http://codeigniter.com/">CodeIgniter</a>&#8216;s &#8220;Disallowed Key Characters&#8221; error message, and one <a href="http://tiffanybbrown.com/2008/05/06/debugging-tip-disallowed-key-character-error-in-codeigniter/">possible cause</a>.</p>
<p>Recently, I stumbled across another cause: <strong>disallowed characters in a POST array</strong>. In my case, I had single-quotes as part of the variable name. My fingers mixed up PHP array syntax and HTML form syntax. </p>
<pre>
&lt;!-- will cause the error --&gt;
&lt;input type="text" name="fieldname['foo']" value=""&gt; 

&lt;!-- won't cause the error. besides, this is the proper syntax. --&gt;
&lt;input type="text" name="fieldname[foo]" value=""&gt;
</pre>
<p><a href="http://tiffanybbrown.com/2008/05/06/debugging-tip-disallowed-key-character-error-in-codeigniter/#comment-61676457">kalodont</a> points out this can also happen when using accented characters, such as &oacute; or &ntilde; as keys in your array.            </p>
]]></content:encoded>
			<wfw:commentRss>http://tiffanybbrown.com/2010/07/21/codeigniters-disallowed-key-characters-error-revisited/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Debugging Flash applications with Firefox extensions</title>
		<link>http://tiffanybbrown.com/2009/05/01/debugging-flash-applications-with-firefox-extensions/</link>
		<comments>http://tiffanybbrown.com/2009/05/01/debugging-flash-applications-with-firefox-extensions/#comments</comments>
		<pubDate>Fri, 01 May 2009 11:00:18 +0000</pubDate>
		<dc:creator>tiffany</dc:creator>
				<category><![CDATA[ActionScript, Flash & Flex]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Web Development & Programming]]></category>
		<category><![CDATA[Alessandro Crugnola]]></category>
		<category><![CDATA[debugging]]></category>
		<category><![CDATA[externalinterface]]></category>
		<category><![CDATA[firebug]]></category>
		<category><![CDATA[flash and xml]]></category>
		<category><![CDATA[flash tracer]]></category>
		<category><![CDATA[livehttpheaders]]></category>

		<guid isPermaLink="false">http://tiffanybbrown.com/?p=1969</guid>
		<description><![CDATA[Using ExternalInterface and Firebug Lately, the day job has had me busting booty on a Flash/ActionScript project that makes considerable use of the ExternalInterface class. ExternalInterface allows Flash to communicate with its HTML container using JavaScript. It&#8217;s a groovy feature, but one that changes the development process a bit. Unlike straight-up Flash development, ExternalInterface requires [...]]]></description>
			<content:encoded><![CDATA[<h3>Using ExternalInterface and Firebug</h3>
<p><img src="http://www.tiffanybbrown.com/images/firebug.png" alt="Firebug logo" style="float:right; margin: 0 0 1em 1em;" /><br />
Lately, the <a href="http://armchairmedia.com/">day job</a> has had me busting booty on a Flash/ActionScript project that makes considerable use of the <a href="http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/external/ExternalInterface.html">ExternalInterface</a> class. </p>
<p>ExternalInterface allows Flash to communicate with its HTML container using JavaScript. It&#8217;s a groovy feature, but one that changes the development process a bit. Unlike straight-up Flash development, ExternalInterface requires you to test interaction between the movie and its container. </p>
<p>One way to do this is using the <a href="http://getfirebug.com/logging.html">Firebug console</a>. Set up a simple debug function embedded in your HTML or in an external JavaScript file: <code>function debug(data){ console.log(data); }</code>. Then pass troubleshooting data to it using <code>ExternalInterface.call('debug','data you want to write');</code> just as you would with <code>trace()</code>. </p>
<p>I even used this technique to dump XML data to the console. Works amazingly well.</p>
<p>A minor drawback: compiler errors won&#8217;t be written to the console. Instead you will see a generic error message, and your movie won&#8217;t load. </p>
<h3>Using Flash Tracer</h3>
<div class="video">
	<img src="http://www.tiffanybbrown.com/images/flashtracer.gif" alt="Image of Flash Tracer" />
</div>
<p>For a more robust option, try <a href="http://www.sephiroth.it/firefox/flashtracer/">Flash Tracer</a>, a Firefox extension by Alessandro Crugnola. Flash Tracer uses native Flash logging to deliver <code>trace()</code> messages directly to the browser. To use it, you&#8217;ll need to install a <a href="http://www.adobe.com/support/flashplayer/downloads.html">debug version</a> of the Flash Player.</p>
<h3>Using LiveHTTPHeaders</h3>
<p>Sometimes when sending and receiving data to and from a server, you can&#8217;t tell what&#8217;s wrong by looking at your Flash application. There could be an error in your server side code. Or perhaps there&#8217;s a problem with the data you&#8217;re sending. This is where <a href="https://addons.mozilla.org/en-US/firefox/addon/3829">LiveHTTPHeaders</a> comes in handy. </p>
<p>LiveHTTPHeaders shows both browser-and-Flash request headers and server response headers. It also sends encoded GET and POST data from HTML forms or ActionScript <code>URLRequest()</code> / <code>URLVariables()</code> / <code>URLLoader()</code> operations. </p>
<p>This extension won&#8217;t show the actual data the server has returned. But you can use it to spot things like <a href="http://tiffanybbrown.com/2008/05/06/debugging-tip-disallowed-key-character-error-in-codeigniter/">invisible line break characters</a> and internal server errors.</p>
<h3>Related posts:</h3>
<ul>
<li><a href="http://tiffanybbrown.com/2006/07/13/essential-firefox-plug-ins/">Essential Firefox Extensions</a></li>
<li><a href="http://tiffanybbrown.com/2007/08/09/firefox-extensions/">My new favorite Firefox extensions</a></li>
<li><a href="http://tiffanybbrown.com/2008/05/09/clearing-loadvars-in-actionscript/">Clearing LoadVars() in ActionScript</a></li>
<li><a href="http://tiffanybbrown.com/2007/07/23/visited-links-in-flash/">OurIndustryIsBroken.com: Tracking site users and traffic with PHP, MySQL and ActionScript</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://tiffanybbrown.com/2009/05/01/debugging-flash-applications-with-firefox-extensions/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
		<item>
		<title>Frameworks: Yay! Nay! How do you decide?</title>
		<link>http://tiffanybbrown.com/2008/11/03/franeworks-yay-nay-how-do-you-decide/</link>
		<comments>http://tiffanybbrown.com/2008/11/03/franeworks-yay-nay-how-do-you-decide/#comments</comments>
		<pubDate>Mon, 03 Nov 2008 09:00:24 +0000</pubDate>
		<dc:creator>tiffany</dc:creator>
				<category><![CDATA[Web Development & Programming]]></category>
		<category><![CDATA[frameworks]]></category>

		<guid isPermaLink="false">http://tiffanybbrown.com/?p=1544</guid>
		<description><![CDATA[Frameworks in web development have been the hotness for a few years now. But not everyone is &#8220;frameworks! yay!&#8221; A few high profile developers have questioned their use. The goal of frameworks &#8212; be they server side, JavaScript-based, or CSS-based &#8212; is to decrease development time. With server-side frameworks, I also find that they force [...]]]></description>
			<content:encoded><![CDATA[<p>Frameworks in web development have been the hotness for a few years now. But not everyone is &#8220;frameworks! yay!&#8221; A few <a href="http://adactio.com/journal/1498">high</a> <a href="http://webstandardsgroup.org/features/peter-paul-koch.cfm">profile</a>  <a href="http://www.sitepoint.com/blogs/2008/08/29/rasmus-lerdorf-php-frameworks-think-again/">developers</a> have questioned their use. </p>
<p>The goal of frameworks &#8212; be they server side, JavaScript-based, or CSS-based &#8212; is to decrease development time. With server-side frameworks, I also find that they force some organization and structure to my code that it might not otherwise have. But every framework has a learning curve.</p>
<p>They also come with a performance cost. More code means more processing time and/or effort, longer download times and &#8212; this is particularly important when talking about client-side code for mobile devices &#8212; more energy consumption.</p>
<p>There&#8217;s a trade off with frameworks, then, between development ease and optimized code.</p>
<p>I personally think CSS frameworks are overkill. Even using a reset style sheet is often more code than necessary. With JavaScript frameworks, my opinion is more balanced. JavaScript frameworks are wonderful for quickly creating animated effects. But if the task is just to toggle the visibility of an element or clear a search box, surely, custom code is the lighter weight option.</p>
<p>The one area where I am most in favor of using frameworks is application development. Applications have a lot of little pieces to worry about. I kind of like the reassurances that frameworks offer. That said, I agree with <a href="http://www.sitepoint.com/blogs/2008/08/29/rasmus-lerdorf-php-frameworks-think-again/">Rasmus Lerdorf</a> that a good framework should be lightweight and speedy (his favorite, if you can call it that, is <a href="http://codeigniter.com/">CodeIgniter</a>).</p>
<p>But what about you? How do you decide whether to develop something yourself or use a framework / library? Do you prefer frameworks for developing server-side applications? What about for client-side development? <b>When, where, and why do <em>you</em> use frameworks? </b></p>
]]></content:encoded>
			<wfw:commentRss>http://tiffanybbrown.com/2008/11/03/franeworks-yay-nay-how-do-you-decide/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>SATMakeYourPoint.com</title>
		<link>http://tiffanybbrown.com/2008/09/11/sat_make_your_point/</link>
		<comments>http://tiffanybbrown.com/2008/09/11/sat_make_your_point/#comments</comments>
		<pubDate>Fri, 12 Sep 2008 03:44:49 +0000</pubDate>
		<dc:creator>tiffany</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://tiffanybbrown.com/?p=1487</guid>
		<description><![CDATA[It&#8217;s Armchair&#8216;s latest project for the College Board: SATMakeYourPoint.com. It&#8217;s a lightweight interactive piece for the back-to-school season. Users plot their dot on the graph and see how they compare to other users who&#8217;ve answered the same graph. You can click a white dot to see what graphs a particular user has answered. If you&#8217;re [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s <a href="http://armchairmedia.com/">Armchair</a>&#8216;s latest project for the <a href="http://www.collegeboard.com/">College Board</a>: <a href="http://satmakeyourpoint.com/">SATMakeYourPoint.com</a>.</p>
<p>It&#8217;s a lightweight interactive piece for the back-to-school season. Users plot their dot on the graph and see how they compare to other users who&#8217;ve answered the same graph. You can click a white dot to see what graphs a particular user has answered. If you&#8217;re revisiting a graph you have already answered (as remembered by Flash&#8217;s SharedObjects and cookies), the graph will auto-load everyone&#8217;s dots.</p>
<p>Of course it comes with the usual groovy bits: tags, browse, and search. You can also highlight a friend (assuming they have answered the same graph), or email it to a friend.</p>
<p>This was a <em>serious</em> collaborative effort involving ActionScript, PHP, JavaScript, and MySQL development. <a href="http://howdoyouspellkjartansson.com/">Stef&aacute;n Kjartansson</a>, <a href="http://byrdhouse.typepad.com/">Kevin Byrd</a>, and one of our summer wonder interns <a href="http://tedullrich.com/">Ted Ullrich</a> did the design and visual effects. <a href="http://natesteiner.com/">Nate Steiner</a> created the HTML and CSS.</p>
<p>My role? Handle the back-end development and make it work with the Flash and ActionScript 2-driven front-end. I also did some additional ActionScript development to properly process and load the XML data.</p>
<p>I used <a href="http://tiffanybbrown.com/?s=codeigniter">CodeIgniter</a> to power the back end, along with some custom PHP scripting to support URLs with query strings (for tracking purposes). In CodeIgniter, query strings are an all-or-nothing proposition. As a result, I wound up re-writing the home page code, but retaining most of the CodeIgniter views used throughout the site. This way the site is still easy to update and change.</p>
<p>We&#8217;re still tweaking and enhancing it, but we&#8217;re very happy with how it&#8217;s working so far and how many users are responding to it.</p>
]]></content:encoded>
			<wfw:commentRss>http://tiffanybbrown.com/2008/09/11/sat_make_your_point/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>SATAchieveMore.com</title>
		<link>http://tiffanybbrown.com/2008/05/20/satachievemorecom/</link>
		<comments>http://tiffanybbrown.com/2008/05/20/satachievemorecom/#comments</comments>
		<pubDate>Tue, 20 May 2008 14:55:15 +0000</pubDate>
		<dc:creator>tiffany</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://tiffanybbrown.com/?p=1289</guid>
		<description><![CDATA[The College Board approached Armchair Media about doing a branding microsite for a high school aged, college-bound audience. The goal: to make the SAT seem cooler so that more students would sign up to take it (as opposed to the ACT). The concept &#8220;Meet me in the future &#8230&#8243; Students (ideally) complete the sentence &#8220;I [...]]]></description>
			<content:encoded><![CDATA[<p>The College Board approached Armchair Media about doing a branding <a href="http://www.satachievemore.com/">microsite</a> for a high school aged, college-bound audience. The goal: to make the SAT seem cooler so that more students would sign up to take it<del datetime="2008-05-23T17:18:16+00:00"> (as opposed to the ACT)</del>. </p>
<h3>The concept</h3>
<p>&#8220;Meet me in the future &#8230&#8243; Students (ideally) complete the sentence &#8220;I will be &#8230;&#8221; Answers have ranged from inspiring to offensive (which have been deleted), but the response has been good, in our opinion. And at least one student called it &#8220;inspiring.&#8221;</p>
<h3>The technology</h3>
<p>SATAchieveMore.com integrates a Flash / ActionScript 2.0 front end with a PHP+MySQL-driven back end. I did the bulk of the ActionScript development, and worked with our motion graphics developer to integrate the motion effects. I used the <a href="http://codeigniter.com/">CodeIgniter</a> framework to develop a middle layer that does the communication between the database and the SWF. I also used CodeIgniter to develop an administrative tool (to manage submissions) for the client. </p>
<h3>Why CodeIgniter?</h3>
<p>I chose CodeIgniter because it&#8217;s extraordinarily easy to configure and learn, and it&#8217;s well-documented. Aside from one <a href="http://tiffanybbrown.com/2008/05/06/debugging-tip-disallowed-key-character-error-in-codeigniter/">day lost to some excess whitespace</a>, developing with CI was easy and painless.</p>
<h3>Related posts</h3>
<ul>
<li><a href="http://tiffanybbrown.com/2008/05/09/clearing-loadvars-in-actionscript/">Clearing LoadVars() in ActionScript</a></li>
<li><a href="http://tiffanybbrown.com/2008/05/06/debugging-tip-disallowed-key-character-error-in-codeigniter/">Debugging tip: &#8220;Disallowed Key Character&#8221; error in CodeIgniter</a></li>
<li><a href="http://tiffanybbrown.com/2007/04/16/php-frameworks/">What&#8217;s your favorite PHP framework?</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://tiffanybbrown.com/2008/05/20/satachievemorecom/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Debugging tip: &#8220;Disallowed Key Character&#8221; error in CodeIgniter</title>
		<link>http://tiffanybbrown.com/2008/05/06/debugging-tip-disallowed-key-character-error-in-codeigniter/</link>
		<comments>http://tiffanybbrown.com/2008/05/06/debugging-tip-disallowed-key-character-error-in-codeigniter/#comments</comments>
		<pubDate>Tue, 06 May 2008 21:24:17 +0000</pubDate>
		<dc:creator>tiffany</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Development & Programming]]></category>
		<category><![CDATA[carriage return]]></category>
		<category><![CDATA[codeigniter]]></category>
		<category><![CDATA[debugging]]></category>
		<category><![CDATA[line breaks]]></category>
		<category><![CDATA[line feed]]></category>
		<category><![CDATA[whitespace]]></category>

		<guid isPermaLink="false">http://tiffanybbrown.com/?p=1285</guid>
		<description><![CDATA[After 6 hours of massive anxiety, stress, near tears, one pound on my desk, and some hair pulling, I tracked down the source of a nagging Disallowed Key Character error that I received while using CodeIgniter: an extra line break. The line feed (LF) and carriage return (CR) characters (and their hex code equivalents (%0D [...]]]></description>
			<content:encoded><![CDATA[<p>After 6 hours of massive anxiety, stress, near tears, one pound on my desk, and some hair pulling, I tracked down the source of a nagging <strong>Disallowed Key Character</strong> error that I received while using <a href="http://www.codeigniter.com/">CodeIgniter</a>: <strong>an extra line break</strong>.</p>
<p>The line feed (LF) and carriage return (CR) characters (and their hex code equivalents (%0D and %0A) are forbidden in CodeIgniter&#8217;s framework. The hard part is tracking down exactly <em>where</em> that extra line break character lives.</p>
<p>In my case, there was an extra line of blank, barren, not-all-that-obvious white space at the very, very end of one of my controller files, just <em>after</em> the closing <code>?&gt;</code>. </p>
<h3>Related:</h3>
<ul>
<li><a href="http://tiffanybbrown.com/2005/02/15/php_header_error_messages/">PHP header error messages</a></li>
<li><a href="http://tiffanybbrown.com/2006/03/21/four_common_p_h_p_errors_and_what_they_mean/">Four common P H P errors and what they mean</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://tiffanybbrown.com/2008/05/06/debugging-tip-disallowed-key-character-error-in-codeigniter/feed/</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
		<item>
		<title>Links for 2007-04-19</title>
		<link>http://tiffanybbrown.com/2007/04/19/links-for-2007-04-19/</link>
		<comments>http://tiffanybbrown.com/2007/04/19/links-for-2007-04-19/#comments</comments>
		<pubDate>Thu, 19 Apr 2007 22:56:21 +0000</pubDate>
		<dc:creator>tiffany</dc:creator>
				<category><![CDATA[Link dumps]]></category>

		<guid isPermaLink="false">http://tiffanybbrown.com/2007/04/19/links-for-2007-04-19/</guid>
		<description><![CDATA[Busyness vs. Burst: Why Corporate Web Workers Look Unproductive Code Igniter 1.5.3 released]]></description>
			<content:encoded><![CDATA[<ul>
<li><a href="http://webworkerdaily.com/2007/04/19/busyness-vs-burst-why-corporate-web-workers-look-unproductive/">Busyness vs. Burst: Why Corporate Web Workers Look Unproductive</a></li>
<li><a href="http://codeigniter.com/news/code_igniter_153_released/">Code Igniter 1.5.3 released</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://tiffanybbrown.com/2007/04/19/links-for-2007-04-19/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What&#8217;s your favorite PHP framework?</title>
		<link>http://tiffanybbrown.com/2007/04/16/php-frameworks/</link>
		<comments>http://tiffanybbrown.com/2007/04/16/php-frameworks/#comments</comments>
		<pubDate>Mon, 16 Apr 2007 09:00:23 +0000</pubDate>
		<dc:creator>tiffany</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Development & Programming]]></category>

		<guid isPermaLink="false">http://tiffanybbrown.com/2007/04/16/php-frameworks/</guid>
		<description><![CDATA[Another post of interest: An interview with Timani Tunduwani on why he made the switch from CakePHP to PRADO. Related post elsewhere: You may be interested in PHP frameworks &#8211; Which one is Most Suitable for you? So I&#8217;m making my first foray into PHP frameworks. I&#8217;m tinkering with CodeIgniter right now. I chose it [...]]]></description>
			<content:encoded><![CDATA[<p><ins datetime="2007-08-24T13:02:18+00:00" class="editors-note"><b>Another post of interest:</b> An interview with Timani Tunduwani on why he made the <a href="http://geeqsquad.com/blog/2007/08/20/prado-watch-interview-with-timani-tunduwani-why-i-moved-from-cakephp-to-prado/">switch from CakePHP to PRADO</a>.</ins></p>
<p><ins datetime="2007-08-14T13:55:29+00:00" class="editors-note"><strong>Related post elsewhere: </strong> You may be interested in <a class="blogpost title" href="http://www.thecredence.com/php-frameworks-which-one-is-most-suitable-for-you/">PHP frameworks &#8211; Which one is Most Suitable for you?</a></ins></p>
<p>So I&#8217;m making my first foray into PHP frameworks. I&#8217;m tinkering with <a href="http://www.codeigniter.com/">CodeIgniter</a> right now. I chose it on a lark, in part because it was easy to install, didnt&#8217;t require too much tinkering with configuration settings, and well-documented. </p>
<p>Though I like CodeIgniter&#8217;s <abbr title="Object Oriented">OO</abbr>-<abbr title="Model-View-Controller">MVC</abbr> approach, I&#8217;m not wedded to it. I&#8217;m also very interested in what else is out there. So please share with us:</p>
<ul>
<li>What PHP framework are you using?</li>
<li>What&#8217;s your favorite PHP framework (if you have tried enough to compare)?</li>
<li>If you were going to recommend a framework to learn, which would you choose (or warn folks to avoid) and why?</li>
</ul>
<p>And if you haven&#8217;t yet looked into PHP frameworks, here&#8217;s a (far from comprehensive) list to get you started:<br />
<span id="more-1036"></span></p>
<ul>
<li><a href="http://www.akelos.org/">Akelos</a></li>
<li><a href="http://bennolan.com/biscuit/">Biscuit</a></li>
<li><a href="http://www.blueshoes.org/">Blueshoes</a></li>
<li><a href="http://cakephp.org/">CakePHP</a></li>
<li><a href="http://codeigniter.com/">CodeIgniter</a></li>
<li><a href="http://epf.molhanec.net/">Easy PHP Framework</a></li>
<li><ins datetime="2011-04-14T18:29:19+00:00"><a href="http://fuelphp.com/">Fuel PHP</a></ins></li>
<li><a href="http://limb-project.com/">Limb PHP Framework</a></li>
<li><ins datetime="2010-12-06T18:04:09+00:00"><a href="http://lithify.me/">Lithium</a></ins></li>
<li><a href="http://p4a.crealabsfoundation.org/">P4A</a></li>
<li><a href="http://phocoa.com/">PHOCOA</a></li>
<li><a href="http://www.phpontrax.com/">PHP on TRAX</a></li>
<li><a href="http://www.pradosoft.com/">Prado PHP Framework</a></li>
<li><a href="http://propel.phpdb.org/trac/">Propel</a></li>
<li><a href="http://qcodo.com/">Qcodo</a></li>
<li><a href="http://www.qcu.be/">Qcubed</a> (a fork of Qcodo)</li>
<li><a href="http://seagullproject.org/">Seagull</a></li>
<li><a href="https://launchpad.net/simplicity">Simplicity</a></li>
<li><a href="http://smarty.php.net/">Smarty</a> (Although it&#8217;s a bit more of a templating framework)</li>
<li><a href="http://solarphp.com/">Solar</a></li>
<li><a href="http://sourdough.phpee.com/">Sourdough</a></li>
<li><a href="http://www.stratosframework.com/">Stratos</a></li>
<li><a href="http://www.symfony-project.com/">Symfony</a></li>
<li><ins datetime="2010-08-24T17:55:47+00:00"><a href="http://www.vork.us/">Vork</a></ins></li>
<li><a href="http://wasp.sourceforge.net/content/">WASP</a></li>
<li><a href="http://www.phpwact.org/">Web Application Component Toolkit</a></li>
<li><ins datetime="2010-12-06T18:04:41+00:00"><a href="http://www.yiiframework.com/">Yii</a></ins></li>
<li><a href="http://framework.zend.com/">Zend</a></li>
<li><a href="http://zoopframework.com/">Zoop</a></li>
</ul>
<p>Also worth reading, Rasmus Lerdorf&#8217;s February 2006 post, <a class="blogpost title" href="http://toys.lerdorf.com/archives/38-The-no-framework-PHP-MVC-framework.html">The no-framework PHP MVC framework</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://tiffanybbrown.com/2007/04/16/php-frameworks/feed/</wfw:commentRss>
		<slash:comments>86</slash:comments>
		</item>
	</channel>
</rss>

