<?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>Web Design &#038; Web Development Specialists, Extro Interactive, Sydney &#187; php</title>
	<atom:link href="http://blog.extro.com.au/category/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.extro.com.au</link>
	<description>Web application development, Flash, Actionscript, Flex, Online Marketing, Web 2.0 and other uber-geeky stuff</description>
	<lastBuildDate>Thu, 30 Sep 2010 05:46:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Use a different php.ini file for a particular domain in Plesk (php5/php4)</title>
		<link>http://blog.extro.com.au/2009/08/25/use-a-different-phpini-file-for-a-particular-domain-in-plesk-php5php4/</link>
		<comments>http://blog.extro.com.au/2009/08/25/use-a-different-phpini-file-for-a-particular-domain-in-plesk-php5php4/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 03:45:53 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[cakephp]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[plesk]]></category>

		<guid isPermaLink="false">http://blog.extro.com.au/2009/08/25/use-a-different-phpini-file-for-a-particular-domain-in-plesk-php5php4/</guid>
		<description><![CDATA[Media Temple has rather nice article on the topic of modifying php.ini file and enabling php5 on a per-domain basis but they don&#8217;t address this particular issue. If you need to use a separate php.ini file for a particular domain in Plesk, the easy way is to copy the php.ini file into the current domain&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Media Temple has rather nice article on the topic of <a title="Modify php.ini file in Plesk" target="_blank" href="http://kb.mediatemple.net/questions/664/How+can+I+edit+php.ini+on+the+(dv)+%26+(dpv)+Dedicated-Virtual+Servers%3F">modifying php.ini file</a> and <a title="Enabling php5 on a per-domain basis for Plesk" target="_blank" href="http://kb.mediatemple.net/questions/260/Upgrade+to+PHP+5+on+(dv)+3.0+Dedicated+Virtual+Servers">enabling php5 on a per-domain basis</a> but they don&#8217;t address this particular issue.</p>
<p>If you need to use a separate php.ini file for a particular domain in Plesk, the easy way is to copy the php.ini file into the current domain&#8217;s bin folder, and then restart the server using the below commands. The php executable looks in it&#8217;s own directory first for a valid php.ini file before looking in the other locations, and before the default php.ini file is loaded.</p>
<p>In our case, we needed to do this because we needed to specify a unique session.save_path for each domain, but there are certainly countless other reasons why you would want to use a special php.ini file per domain.</p>
<p><strong>Create local version of php.ini for this domain</strong><br />
cp /opt/php51/etc/php5/fastcgi/php.ini /var/www/vhosts/example.com/bin/php.ini</p>
<p><strong>Restart Plesk web server</strong><br />
/usr/local/psa/admin/sbin/websrvmng -a -v</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.extro.com.au/2009/08/25/use-a-different-phpini-file-for-a-particular-domain-in-plesk-php5php4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FORTUNE MAGAZINE LABELS SUNGEVITY &#8220;THE DELL OF SOLAR ENERGY&#8221;</title>
		<link>http://blog.extro.com.au/2008/06/04/fortune-magazine-labels-sungevity-the-dell-of-solar-energy/</link>
		<comments>http://blog.extro.com.au/2008/06/04/fortune-magazine-labels-sungevity-the-dell-of-solar-energy/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 07:19:55 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[account management]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[cakephp]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.extro.com.au/2008/06/04/fortune-magazine-labels-sungevity-the-dell-of-solar-energy/</guid>
		<description><![CDATA[The website is set to transform the solar industry, with Fortune magazine labelling Sungevity &#8220;The Dell of Solar Energy&#8221;. The Sungevity.com launch has caused a stir in the media, with feature articles in Fortune magazine, CNN money, Wired.com, TV News features, plus plenty of chatter on blogs all around the world. Extro Interactive worked alongside [...]]]></description>
			<content:encoded><![CDATA[<p><a id="p17" rel="attachment" class="imagelink" title="Sungevity Homepage" href="http://blog.extro.com.au/2008/06/04/fortune-magazine-labels-sungevity-the-dell-of-solar-energy/sungevity-homepage/"><img id="image17" alt="Sungevity Homepage" src="http://blog.extro.com.au/wp-content/uploads/2008/06/sungevity_solar_electricity_systems_homepage.jpg" /></a><br />
The website is set to transform the solar industry, with Fortune magazine labelling Sungevity <em>&#8220;The Dell of Solar Energy&#8221;.</em></p>
<p>The <a title="Sungevity is the only place you can buy a solar power system online" target="_blank" href="http://www.sungevity.com">Sungevity.com</a> launch has caused a stir in the media, with feature articles in Fortune magazine, CNN money, Wired.com, TV News features, plus plenty of chatter on blogs all around the world.</p>
<p>Extro Interactive worked alongside Sydney-based <a title="Canned Ham creative collective" target="_blank" href="http://www.cannedham.com.au">Canned Ham</a> to deliver a website that offers a new take on the residential solar industry. The site revolutionises the process of purchasing a home solar system by leveraging web 2.0 technology.</p>
<p>Sungevity is currently only available in California, but they are quickly expanding across the US. We hope they will be launching in Australia sometime soon!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.extro.com.au/2008/06/04/fortune-magazine-labels-sungevity-the-dell-of-solar-energy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thanks Flash Gurus</title>
		<link>http://blog.extro.com.au/2008/05/01/thanks-flash-gurus/</link>
		<comments>http://blog.extro.com.au/2008/05/01/thanks-flash-gurus/#comments</comments>
		<pubDate>Thu, 01 May 2008 23:30:23 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[actionscript]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[compatability]]></category>
		<category><![CDATA[developers]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.extro.com.au/2008/05/01/thanks-flash-gurus/</guid>
		<description><![CDATA[Just a quick shoutout to say thanks to a few gun actionscript coders out there who are generously sharing their top-notch work&#8230; Shane McCartney / www.flashdynamix.com and specifically this great post on GIS mapping interfaces in actionscript blog.pixelbreaker.com &#8211; Mac Mousewheel scrolling in AS2 and SWFObject add-on: Size limiting for full window flash (my favourite) [...]]]></description>
			<content:encoded><![CDATA[<p>Just a quick shoutout to say thanks to a few gun actionscript coders out there who are generously sharing their top-notch work&#8230;</p>
<ul>
<li>Shane McCartney / www.flashdynamix.com and specifically this great post on <a title="GIS mapping interfaces in actionscript" target="_blank" href="http://www.lostinactionscript.com/blog/index.php/2007/03/05/google-windows-maps-flash-api-v10-as2-source/">GIS mapping interfaces in actionscript </a></li>
<li><a title="blog.pixelbreaker.com" target="_blank" href="http://blog.pixelbreaker.com">blog.pixelbreaker.com</a> &#8211; <a title="Mac Mousewheel scrolling in AS2" target="_blank" href="http://blog.pixelbreaker.com/flash/as30-mousewheel-on-mac-os-x/">Mac Mousewheel scrolling in AS2</a> and <a title="Size limiting for full window flash" target="_blank" href="http://blog.pixelbreaker.com/flash/swfforcesize/">SWFObject add-on: Size limiting for full window flash</a> (my favourite)</li>
<li>Mario Klingemann / Quasimondo &#8211; the legendary <a target="_blank" title="flash butmapexporter" href="http://www.quasimondo.com/archives/000572.php">flash bitmapexporter: compress and save images through flash / actionscript </a></li>
<li><a title="Enabling Bitmap Draw across domains" target="_blank" href="http://www.abdulqabiz.com/blog/archives/flash_and_actionscript/enabling_bitmapdatad.php">Abdul Qabix</a> &#8211; despite all the confusion, it turns out you can access bitmap data (BitmapData.draw()) on a different domain in Actionscript 2, you just need to manually call  System.security.loadPolicyFile(&#8220;http://otherdomain.com/crossdomain.xml&#8221;) and the domain hosting the image must have a crossdomain file. (Flash loads it automatically for data, but not for images).</li>
<li>JSON for AS2&#8230; we also made an <a target="_blank" href="http://blog.extro.com.au/2008/05/01/json-for-actionscript-2-update-to-fix-ordering-bug-of-object-properties/">update to the Actionscript 2 JSON class to fix ordering bug of object properties </a></li>
<li>More coming soon&#8230;</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.extro.com.au/2008/05/01/thanks-flash-gurus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Internet Explorer 8 (IE8) to adopt open W3C standards?</title>
		<link>http://blog.extro.com.au/2008/03/26/internet-explorer-8-ie8-to-adopt-open-w3c-standards/</link>
		<comments>http://blog.extro.com.au/2008/03/26/internet-explorer-8-ie8-to-adopt-open-w3c-standards/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 22:45:56 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[compatability]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://blog.extro.com.au/2008/03/26/internet-explorer-8-ie8-to-adopt-open-w3c-standards/</guid>
		<description><![CDATA[Is there light at the end of the browser-hacking tunnel? I just read in SMH that IE8 will adopt open W3C standards by default (with an option to revert back to non-standard compatability modes to keep legacy systems built to support IE6 and IE7 up and running)&#8230; Firstly, I am taking it with a grain [...]]]></description>
			<content:encoded><![CDATA[<p>Is there light at the end of the browser-hacking tunnel? I just read in SMH that IE8 will adopt open W3C standards by default (with an option to revert back to non-standard compatability modes to keep legacy systems built to support IE6 and IE7 up and running)&#8230;</p>
<p>Firstly, I am taking it with a grain of salt because after almost a decade of stupidity, I find it a bit hard to believe they are going to come full circle now. So I&#8217;m not throwing out our four-system browser-compatability (hacking) workstation just yet. But if it is true, then hallelujah!!!</p>
<p>These days we are spending (wasting) an absurd amount of time on browser compatability. In fact, for design-focussed clients, it&#8217;s such a problem that browser compatability is one of the earliest considerations we need to address in the design process, because there are simply so many pitfalls that a perfectly valid standards-based site concept may be a write-off in a good chunk of browsers.</p>
<p>Now, all we need to do is sort out standardize what&#8217;s happening on the javascript side of the equation and we&#8217;ll be taking fridays off (and probably half of thursday too)!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.extro.com.au/2008/03/26/internet-explorer-8-ie8-to-adopt-open-w3c-standards/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Newbie CakePHP Tips</title>
		<link>http://blog.extro.com.au/2008/02/25/newbie-cakephp-tips/</link>
		<comments>http://blog.extro.com.au/2008/02/25/newbie-cakephp-tips/#comments</comments>
		<pubDate>Mon, 25 Feb 2008 10:19:13 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[cakephp]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://blog.extro.com.au/?p=8</guid>
		<description><![CDATA[Here are a few things to keep in mind when learning CakePHP. Learn Cake&#8217;s naming conventions. If you don&#8217;t understand them, you will not understand cake. Simple. e.g. If you have a field dropdown field in a form, in your view you should use $form->input(&#8216;featured_status&#8217;), and in your controller you could use $this->set(&#8216;featuredStatuses&#8217;, array(0=>&#8217;Not featured&#8217;,1=>&#8217;Featured&#8217;) [...]]]></description>
			<content:encoded><![CDATA[<p>Here are a few things to keep in mind when learning CakePHP.</p>
<ul>
<li>Learn Cake&#8217;s naming conventions. If you don&#8217;t understand them, you will not understand cake. Simple. e.g. If you have a field dropdown field in a form, in your view you should use $form->input(&#8216;featured_status&#8217;), and in your controller you could use  $this->set(&#8216;featuredStatuses&#8217;, array(0=>&#8217;Not featured&#8217;,1=>&#8217;Featured&#8217;) ); The naming convention automatically converts between then, so your featured_status field will be populated with all the relevant featuredStatuses.</li>
<li>Lean what &#8220;Fat Models, Thin Controllers&#8221; means. http://www.littlehart.net/atthekeyboard/2007/04/27/fat-models-skinny-controllers/</li>
<li>You don&#8217;t strictly need a separate controller for every single model. Often, it&#8217;s much better to have few er controllers which store all related actions. This often makes it a lot easier to locate relevant code. (e.g. If you had a fruit model, as well as models for oranges, apples, and bananas, it could be good to just have a single fruits_controller, rather than separate controllers for each one.</li>
<li>Code newsting inside views should generally be based on the HTML structure, rather than PHP structure. e.g. You should indent code based on div&#8217;s, rather than php ifs and loops.</li>
<li>You should NEVER use straight database queries. You should learn how to use model associations (hasMany, belongsTo, etc) to perform your queries. Be sure to learn bindModel and unbindModel to perform special quieries -> they allow you to dynamically change your model behaviours, but conveniently, they only last for one query, so your other code will not be affected.</li>
<li>Use a small number of standard elements to build most of your site. Add optional parameters for adding headings, links, rows of data etc. The fewer generic elements you can use to build your ENTIRE site the better.</li>
<li>Beware the dreaded self-closing div tags <<span style="display: none"> </span>div /<span style="display: none"> </span>>. You must always have a separate end tag for divs. Don&#8217;t know why, it&#8217;s just the rules. e.g. <<span style="display: none"> </span>div><<span style="display: none"> </span>/div></li>
<li>When doing browser compatability, comment out each element in turn to identify which elements are causing problems. Also, use Firebug and Internet Explorer Developer Toolbar to ensure your div nesting is correct => incorrect nesting is a major source of browser bugs, because Firefox is a lot friendler than IE, so if you develop and optimise in Firefox you layout may look right, but it may actually contain structural errors which really need to be fixed, rather than just using unreliable browser hacks to hide the problems.</li>
<li>IE is particularly picky when using AJAX -> perform W3C Validation frequently on your html/css, because it will often pick these errors up for you! Rather than digging around in your code for an elusive missing tag or incorrect nesting order.</li>
<li>When using Enum values, use this method to populated your form fields (by adding it to your app_model.php): e.g. Controller code: $this->Event->getEnumValues(&#8216;approval_status&#8217;)); <a target="_blank" href="http://bakery.cakephp.org/articles/view/baked-enums">http://bakery.cakephp.org/articles/view/baked-enums</a></li>
<li>You don&#8217;t need to include all tables in your $uses array. If you include one table, you can uses any models that are associated with that first model by accessing the sub-model as a child of the first model. e.g. If your controller users Author, but you want to use a Book model, you could use the format: $this->Author->Book->findById($book_id)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.extro.com.au/2008/02/25/newbie-cakephp-tips/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

