<?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>Burobjorn.nl &#124; digitaal vakmanschap // digital craftsmanship &#187; php</title>
	<atom:link href="http://www.burobjorn.nl/blog/category/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.burobjorn.nl</link>
	<description>Burobjorn houdt zich bezig met open source software en online media. Van advies tot concept. Van prototype tot implementatie.</description>
	<lastBuildDate>Thu, 05 Aug 2010 11:27:10 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Nieuwe site NOiV gelanceerd!</title>
		<link>http://www.burobjorn.nl/blog/2010/01/12/nieuw-site-noiv-gelanceerd/</link>
		<comments>http://www.burobjorn.nl/blog/2010/01/12/nieuw-site-noiv-gelanceerd/#comments</comments>
		<pubDate>Tue, 12 Jan 2010 13:14:24 +0000</pubDate>
		<dc:creator>BjornW</dc:creator>
				<category><![CDATA[NL]]></category>
		<category><![CDATA[client]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.burobjorn.nl/?p=702</guid>
		<description><![CDATA[
De nieuwe website voor Nederland Open in Verbinding (NOiV) staat live. Tezamen met het Utrechtse bedrijf Eend heeft Burobjorn de website van NOiV op basis van Wordpress Mu ontwikkeld. Hierbij was Burobjorn verantwoordelijk voor het opzetten van Wordpress Mu inclusief de structuur, het ontwikkelen van op maat-gemaakte functionaliteiten zoals een filter systeem en het omzetten [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://noiv.nl"><img class="aligncenter size-medium wp-image-703" title="NOiv website" src="http://www.burobjorn.nl/blog/wp-content/uploads/2010/01/noiv-1-300x261.png" alt="NOiv website" width="300" height="261" /></a><br />
De nieuwe website voor <a href="http://noiv.nl">Nederland Open in Verbinding (NOiV)</a> staat live. Tezamen met het Utrechtse bedrijf <a href="http://eend.nl">Eend</a> heeft Burobjorn de website van NOiV op basis van <a href="http://mu.wordpress.org">Wordpress Mu</a> ontwikkeld. Hierbij was Burobjorn verantwoordelijk voor het opzetten van Wordpress Mu inclusief de structuur, het ontwikkelen van op maat-gemaakte functionaliteiten zoals een filter systeem en het omzetten van de door Eend aangeleverde HTML en CSS (conform de <a href="http://www.webrichtlijnen.nl/">Webrichtlijnen</a>) tot Wordpress templates. Het ontwerp van de site is door <a href="http://www.maaikedelaat.nl/">Maaike de Laat</a> ontworpen.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.burobjorn.nl/blog/2010/01/12/nieuw-site-noiv-gelanceerd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fixing Wordpress and MySQL Charset Problem with bbwp2utf8</title>
		<link>http://www.burobjorn.nl/blog/2008/08/05/released-bbwp2utf8-version-10/</link>
		<comments>http://www.burobjorn.nl/blog/2008/08/05/released-bbwp2utf8-version-10/#comments</comments>
		<pubDate>Tue, 05 Aug 2008 15:54:30 +0000</pubDate>
		<dc:creator>BjornW</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[open-source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[bbwp2utf8]]></category>

		<guid isPermaLink="false">http://www.burobjorn.nl/blog/?p=351</guid>
		<description><![CDATA[I just released version 1.0 of bbwp2utf8 plugin on the wordpress plugin directory. 
If you have issues with your blog with strange characters appearing due to a MySQL database Character Set not being UTF8 in combination with Wordpress, then this might be the solution for you:
bbwp2utf8 will attempt to convert a wordpress or wordpress mu [...]]]></description>
			<content:encoded><![CDATA[<p>I just released version 1.0 of <a href="http://wordpress.org/extend/plugins/bbwp2utf8/">bbwp2utf8 plugin on the wordpress plugin directory</a>. </p>
<p>If you have issues with your blog with strange characters appearing due to a <a href="http://mysql.com">MySQL</a> database <a href="http://dev.mysql.com/doc/refman/5.0/en/charset-general.html">Character Set</a> not being <a href="http://en.wikipedia.org/wiki/UTF-8">UTF8</a> in combination with <a href="http://wordpress.org">Wordpress</a>, then this might be the solution for you:</p>
<blockquote><p>bbwp2utf8 will attempt to convert a wordpress or wordpress mu database with content in whatever character set to utf8. It uses the information provided by this <a href="http://codex.wordpress.org/Converting_Database_Character_Sets/">guide</a> on the <a href="http://codex.wordpress.org">wordpress codex site</a>. </p></blockquote>
<p>This solves the issue with weird characters due to UTF8 encoding issues as seen in the screenshot below. </p>
<p><a href='http://www.burobjorn.nl/blog/wp-content/uploads/2008/08/screenshot-utf8-character-issue.png'><img src="http://www.burobjorn.nl/blog/wp-content/uploads/2008/08/screenshot-utf8-character-issue-300x231.png" alt="utf8 character issues made visible" title="screenshot-utf8-character-issue" width="300" height="231" class="aligncenter size-medium wp-image-352" /></a></p>
<p>Development for this plugin is made possible by <a href="http://vpro.nl">VPRO</a> Digitaal and started after encountering numerous solutions including other plugins and none providing a 100% workable solution. If you need any help with this plugin, do not hesistate to contact me. My <a href="http://burobjorn.nl">company</a> is available for hire <img src='http://www.burobjorn.nl/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  </p>
<p>Note: Keep in mind that this plugin has been tested thoroughly for <a href="http://mu.wordpress.org">wordpress mu</a>, but only minimaly for <a href="http://wordpress.org">wordpress</a>. Please contact me if you encounter any issues with Wordpress, patches are always welcome.</p>
<p>Visit this link <a href="http://wordpress.org/extend/plugins/bbwp2utf8/">http://wordpress.org/extend/plugins/bbwp2utf8/</a> to download the plugin or to get more detailed info. </p>
<p>Make sure to have a <strong>working backup</strong> of your wordpress (mu) database before using this plugin!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.burobjorn.nl/blog/2008/08/05/released-bbwp2utf8-version-10/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Pre-release of bbmutag: a wordpress mu tag plugin</title>
		<link>http://www.burobjorn.nl/blog/2007/11/06/pre-release-of-bbmutag-a-wordpress-mu-tag-plugin/</link>
		<comments>http://www.burobjorn.nl/blog/2007/11/06/pre-release-of-bbmutag-a-wordpress-mu-tag-plugin/#comments</comments>
		<pubDate>Mon, 05 Nov 2007 23:55:26 +0000</pubDate>
		<dc:creator>BjornW</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[geek]]></category>
		<category><![CDATA[open-source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.burobjorn.nl/blog/?p=279</guid>
		<description><![CDATA[I&#8217;ve been working on a wordpress mu tagging plugin, which will be released under the GPL license . It might seem useless with the upcoming changes in Wordpress MU   where tagging will probably become is part of the core, but for those using older versions this might be useful. It&#8217;s been tested on [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working on a wordpress mu tagging plugin, which will be released under the <a href="http://www.gnu.org/copyleft/gpl.html">GPL license</a> . It might seem useless with the <strike>upcoming</strike> <a href="http://mu.wordpress.org/forums/topic.php?id=6672&amp;page">changes in Wordpress MU</a>   where tagging <strike>will probably become</strike> is part of the core, but for those using older versions this might be useful. It&#8217;s been tested on WP MU 1.2.1.</p>
<p>I still need to iron out some quirks here and there with the generated documentation and (lack of) usage examples (do I hear templates), but as the saying of free open source software goes: &#8216;<a href="http://www.firstmonday.org/issues/issue3_3/raymond/#d4">release early, release often&#8217;</a> . So consider this version to be the pre-official release of my Wordpress Mu tagging plugin. If you need any help with this plugin, leave a comment and I&#8217;ll try to help you out.</p>
<p>This plugin was made possible by the generous support of <a href="http://www.vpro.nl">VPRO</a>  Digitaal.</p>
<p><a href="http://www.burobjorn.nl/blog/wp-content/uploads/2007/11/pre-release-bbmutag.zip"><strong>Download bbMutag, a tagging plugin for WP MU</strong></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.burobjorn.nl/blog/2007/11/06/pre-release-of-bbmutag-a-wordpress-mu-tag-plugin/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Setting up Darwinports, Pear, Apache2, PHP5, MySQL5 and Symfony on OS X &#8216;Tiger&#8217;</title>
		<link>http://www.burobjorn.nl/blog/2007/09/18/setting-up-darwinports-pear-apache2-php5-mysql5-and-symfony-on-os-x-tiger/</link>
		<comments>http://www.burobjorn.nl/blog/2007/09/18/setting-up-darwinports-pear-apache2-php5-mysql5-and-symfony-on-os-x-tiger/#comments</comments>
		<pubDate>Tue, 18 Sep 2007 11:29:05 +0000</pubDate>
		<dc:creator>BjornW</dc:creator>
				<category><![CDATA[geek]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[open-source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://www.burobjorn.nl/blog/?p=159</guid>
		<description><![CDATA[Ok, the title is a bit long, but hopefully people looking for more information about it will have an easier time finding these notes than if I had used the title: &#8220;Installing geek stuff&#8221;  
More after the jump. 
Anyway, here are some notes regarding the installation of Apache2, PHP5 and MySQL5 via Mac Ports [...]]]></description>
			<content:encoded><![CDATA[<p>Ok, the title is a bit long, but hopefully people looking for more information about it will have an easier time finding these notes than if I had used the title: &#8220;Installing geek stuff&#8221; <img src='http://www.burobjorn.nl/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>More after the jump. <span id="more-159"></span></p>
<p>Anyway, here are some notes regarding the installation of <a href="http://httpd.apache.org/docs/2.2/">Apache2</a>, <a href="http://www.php.net/releases/5_2_0.php">PHP5</a> and <a href="http://dev.mysql.com/doc/refman/5.0/en/index.html">MySQL5</a> via <a href="http://macports.org/">Mac Ports</a> in order to install the 1.0.7 of the <a href="http://www.symfony-project.com/">PHP5 framework Symfony</a>.</p>
<p>Some steps involved can take quite a while because Mac ports (Darwin ports had a name change..) compiles the requested applications instead of grabbing binaries. This also means that you need to have some compiler available on your Mac. Usually if you have installed only the base system you will NOT have a compiler, so make sure you have also installed the developer tools which came with your OS X disks. In this tutorial I assume that you&#8217;re not afraid to use the terminal and that you&#8217;re using the Bash shell in OS X, which happens to be the default on &#8216;Tiger&#8217;.</p>
<p>Now you might wonder why on Earth can&#8217;t I just use <a href="http://www.mamp.info/">MAMP</a>  or any other &#8217;simple&#8217; application to do all this work?</p>
<p>Well, first of all MAMP is in my opinion a pain to administer. It&#8217;s not very clear nor does it use conventional configuration standards (such as using opt/local). It also lacks as far as I know a commandline version of PHP 5 which we need for Symfony. Finally I like it when I can update all my software with a short command-line statement. Either manually or using a script to do this regular and automatically without having to download installers. Mac ports may seem daunting at first, but it really takes a lot of annoying stuff out of your hands and it Just Works.</p>
<p>Before we start, keep a good book at hand or combine the whole process with some domestic chores in between steps, because compiling and grabbing the sources might take some time.</p>
<p><strong>Install Macports</strong><br />
Install Mac ports using the (Tiger, Universal) <a href="http://svn.macports.org/repository/macports/downloads/">disk image</a>. Get the latest version (highest version number) and follow the instructions.</p>
<p>Invoke Mac ports via the command-line using the <a href="http://iterm.sourceforge.net/">excellent iTerm</a> or the OS X included terminal and make sure you have the latest version of Mac Ports by typing:</p>
<p><code>sudo port selfupdate</code>.</p>
<p>If all went well, you should see something like this:</p>
<p><em>MacPorts base version 1.520 installed<br />
Downloaded MacPorts base version 1.520<br />
The MacPorts installation is not outdated and so was not updated<br />
selfupdate done!<br />
</em></p>
<p>Ignore my specific version numbers as you might have a newer version, but the statement above assures us that you have the latest version. Keep in mind to ocassionally invoke this command to update your version of mac ports. As a general rule I always first update mac ports before I install or update new software.</p>
<p><strong>Install MySQL 5</strong><br />
After you made sure you have the latest version of Mac Ports we&#8217;re going to install MySQL 5. Type:</p>
<p><code>sudo port install mysql5 +server</code></p>
<p>Are you wondering what the +server means? Well, it&#8217;s a so-called &#8216;variant&#8217;. The Mac ports people describe it as:</p>
<blockquote><p> Before you install a port, you may want to check what variations of that port are available to use. Variants provide additional configuration options for a port.</p></blockquote>
<p>See <a href="http://darwinports.opendarwin.org/docs/ch01s04.html#port">here</a> and <a href="http://darwinports.opendarwin.org/docs/ch07.html">here</a> for more information regarding variants.</p>
<p><strong><em>UPDATE: In the latest version of Mac Ports it does not seem to be necessary anymore to use the variants with mysql5 and you should be able to use only mysql5 and leave out the +server part.</em></strong></p>
<p>If the source grabbing and compiling went ok, you will now have installed mysql5.</p>
<p>Before you can use it you need to create the first database. At least that is what I learned from <a href="http://dev.mysql.com/doc/refman/5.0/en/unix-post-installation.html">this comment by Shane Crawford on the mysql site</a> when I couldn&#8217;t get mysql to work. Type:</p>
<p><code>sudo /opt/local/lib/mysql5/bin/mysql_install_db --user=mysql</code></p>
<p>This ensure you have created at least the mysql user database so mysql can keep track of its own users and such.</p>
<p>As we don&#8217;t want to start mysql manually all the time we need to add it to our startup items (meaning the server will be automatically started when your machine boots up). Mac ports gives this as a hint and I just repeat it here for the sake of completeness. Type:</p>
<p><code> sudo launchctl load -w  /Library/LaunchDaemons/org.darwinports.mysql5.plist</code></p>
<p>This command has just added the mysql5 daemon to your startup items and ensures that mysql will automatically start each time we startup our machine. Now you&#8217;re finished with installing mysql5, but we want to make sure it works without restarting our machine.Type:</p>
<p><code>cd /opt/local/var/db</code></p>
<p>This is where mysql5 will store it&#8217;s database files, now type:</p>
<p><code>ls -l</code></p>
<p>It should show you, something similar to this:</p>
<p><em>drwx&#8212;&#8212;   12 mysql  admin  408 Dec  6 09:49 mysql5</em></p>
<p>This mysql5 directory will contain your databases&#8217; files. Now we want to start the mysql5 server and test if it is alive. Type:</p>
<p><code>cd /opt/local/share/mysql5/mysql</code></p>
<p>Then we&#8217;ll start the server manually:</p>
<p><code>sudo ./mysql.server start</code></p>
<p>And finally we will try to connect to the server. Type:</p>
<p><code>mysqladmin5 -u root ping</code></p>
<p>Which should result in:</p>
<p><em>mysqld is alive</em></p>
<p>Now, we&#8217;re certain mysql has been installed correctly. Please have a look at how to <a href="http://dev.mysql.com/doc/refman/5.0/en/default-privileges.html">secure</a> and configure your mysql5 server further. If you want to make sure the server start automagically the only thing you have to do is to restart your machine and type the last command which should result also in the &#8216;mysqld is alive&#8217; message.</p>
<p><strong>Installing Apache 2</strong><br />
We will continue with installing Apache2. Please type:</p>
<p><code>sudo port install apache2</code></p>
<p>After compiling Apache2, you will need to add the apache2 server to your startup items if you want it to start automagically. Just like we did with the mysql 5 server. Mac ports again gives this as a hint after the installation and I just repeat it here for the sake of completeness. Type:</p>
<p><code>sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist<br />
</code></p>
<p><strong><em>Note: OS X comes with a bundled Apache 1.3 which I switch off to prevent confusion and possible problems. I would suggest you do the same. Go to System Preferences-&gt;Sharing and make sure Personal Web Sharing is switched off. </em></strong></p>
<p>Because we installed our own Apache server, this also means we will not find the log files of our freshly installed Apache 2 in the default /var/log/httpd/ directory, but instead in the /opt/local/apache2/logs/ directory. You can change this by changing the default configuration of the Apache 2 server and set the log directory to /var/log/httpd/. This has the added benefit that the logs will be easily available by the Console application. I&#8217;ll leave this to be an exercise to you. Feel free to ask questions about it in the comments below. I&#8217;ll try to answer them to the best of my ability, although I&#8217;m not an Apache gure by far <img src='http://www.burobjorn.nl/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Now to make sure our freshly installed Apache2 uses the ~/Sites (BTW ~ stands for our home directory. In my case Users/bjorn) directory as its webroot we need to edit the configuration file.</p>
<p>Type:<code>cd /opt/local/apache2/conf/</code></p>
<p>Make a backup of the original configuration, just in case. Type:</p>
<p><code>sudo cp httpd.conf ~/httpd.conf.original</code></p>
<p>Now, in case any of our changes prevent us to use the Apache server you just remove the editted configuration and replace it with the backup. Just type the following within the conf directory and you&#8217;ll have the original configuration and can try again:</p>
<p><code>sudo rm httpd.conf</code><br />
<code>sudo mv ~/httpd.original.conf httpd.conf</code></p>
<p>Let&#8217;s continue and make ~/Sites as our default webroot. Edit the httpd.conf file. Type:</p>
<p><code>sudo nano httpd.conf</code></p>
<p>Now search (CTRL-w) the file for: <em>DocumentRoot</em>. It will look similar to this:</p>
<p><em>DocumentRoot &#8220;/opt/local/apache2/htdocs&#8221;</em></p>
<p>Copy the line (CTRL-k, CTRL-u) and place a hash (#) in front of the original line. Change the new line into:</p>
<p><em>DocumentRoot &#8220;/Users/<username>/Sites&#8221;</username></em></p>
<p>Where <username> is the exact name you use to login in your machine. In my case its bjorn.</username></p>
<p>The end result should look like:</p>
<p><em>#<br />
# DocumentRoot: The directory out of which you will serve your<br />
# documents. By default, all requests are taken from this directory, but<br />
# symbolic links and aliases may be used to point to other locations.<br />
#<br />
#DocumentRoot &#8220;/opt/local/apache2/htdocs&#8221;<br />
DocumentRoot &#8220;/Users/bjorn/Sites&#8221;<br />
</em></p>
<p>Now save the file (press CTRL-x, press Y and then ENTER).</p>
<p>We need to restart the Apache2 server so the changes have effect. Type:</p>
<p><code> cd /opt/local/apache2/bin/</code></p>
<p>And then:</p>
<p><code>apachectl configtest</code></p>
<p>This will test if the changes made to the config file we&#8217;re correct and helps to make sure you haven&#8217;t made a typo. You would see now something similar to this:</p>
<p><em>Syntax OK</em></p>
<p>Now, we&#8217;re going to restart the server:</p>
<p><code>apachectl restart</code></p>
<p>And if everything went ok, you would see something like this:</p>
<p><em>restart: httpd started</em></p>
<p>Now we want to make sure it all works, we will put a a file called <em>index.html</em> in the /Users/<user>/Sites directory. The contents of the file are: </user></p>
<p><em><br />
&lt; !DOCTYPE html PUBLIC &#8220;-//W3C//DTD XHTML 1.0 Transitional//EN&#8221;<br />
&#8220;http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-transitional.dtd&#8221;&gt;<br />
&lt;html xmlns=&#8221;http://www.w3.org/1999/xhtml&#8221; xml:lang=&#8221;en&#8221; lang=&#8221;en&#8221;&gt;<br />
&lt;head&gt;<br />
&lt;meta http-equiv=&#8221;content-type&#8221; content=&#8221;text/html; charset=iso-8859-1&#8243; /&gt;<br />
&lt;title&gt;The server works&lt;/title&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;</em></p>
<p><em>&lt;h1&gt;THE SERVER WORKS!&lt;/h1&gt;</em></p>
<p><em>&lt;/body&gt;<br />
&lt;/html&gt;<br />
</em></p>
<p>Now open up a browser and type in the url bar:</p>
<p><code>127.0.0.1</code></p>
<p>You should now see the message: <em>The server works</em></p>
<p>Apache seems to be installed correctly, but afer we&#8217;ve installed php5 we can now for sure&#8230;so keep your fingers crossed.</p>
<p><strong>Install php5</strong><br />
After setting up Apache 2 and Mysql 5 its time to install PHP 5. Type:</p>
<p><code>sudo port install php5 +apache2 +mysql5</code></p>
<p>We alse include the variants apache2 and mysql5 in order so php 5 will have the necessary tools to work with Apache 2 and Mysql 5. If everything went ok, this should have installed php 5 for you.</p>
<p><strong>Install PEAR</strong><br />
Now that we&#8217;ve installed php 5 we also should be able to use <a href="http://pear.php.net">PEAR</a>. I say, should because I&#8217;ve had some issus with PEAR. Mainly because updating PEAR was more troublesome that I&#8217;d expected. Nonetheless let&#8217;s make sure PEAR uses our fresh installed php5. Type:</p>
<p><code>sudo pear config-set php_bin /opt/local/bin/php</code></p>
<p>This command has set the php interpreter for PEAR to be the one we installed. If you&#8217;ve installed multiple versions of php doing this ensures that we will use the correct php version with PEAR.</p>
<p>Now, we need to make sure PEAR is up-to-date. Type:</p>
<p><code>sudo pear upgrade pear --onlyreqdeps</code></p>
<p>This should update PEAR and we use the switch &#8211;onlyreqdeps to make sure any required dependancies are also installed.</p>
<p>Ok, we&#8217;re finished now with setting up PEAR and all the other tools and now we can setup Symfony.</p>
<p><strong>Install Symfony</strong><br />
We will use the <a href="http://www.symfony-project.com/installation">PEAR install method for Symfony</a> (see also the <a href="http://www.symfony-project.com/book/1_0/03-Running-Symfony">installation chapter</a> of the Symfony book for notes on installing Symfony). This makes it easy to update to a newer version of Symfony. Think of PEAR along the same lines as Mac ports. It makes it easy to keep up-to-date and allows you to install nice and useful components for PHP development. Type:</p>
<p><code>sudo pear channel-discover pear.symfony-project.com</code></p>
<p>This adds the Symfony channel to the PEAR installer. Now PEAR knows about Symfony, which is not an official PEAR project and therefor it cannot use the default channel. However PEAR allows for the addition of non-PEAR projects using different channels. See also the <a href="http://pear.php.net/manual/en/guide.migrating.channels.php">PEAR documentation on channels</a>.</p>
<p>PEAR knows about Symfony and we&#8217;re ready to install. Type:</p>
<p><code>pear install symfony/symfony</code></p>
<p>This installs Symfony in the PEAR default data directory:</p>
<p><em>/opt/local/lib/php</em></p>
<p>We can check if Symfony is installed by typing:</p>
<p><code>symfony -v</code></p>
<p>This should show the version of Symfony installed. If you get an error along the lines of:</p>
<p><em>-bash: symfony: command not found</em></p>
<p>You&#8217;ve probably haven&#8217;t got the symfony executable in your path. Which means it cannot find symfony because it doesn&#8217;t know its location. To fix this we need to add the symfony location to our path. Type:</p>
<p><code>echo export PATH=/opt/local/bin:$PATH &gt;&gt; ~/.profile</code></p>
<p>This command will append the default path of the symfony executable file, which resides in the default mac ports location to your bash profile even if none is present at the moment. After doing this you need to restart your terminal application in order for the changes to take effect. After the restart you should be able to use the symfony command without any problems. You can check if the changes took effect by using this command:</p>
<p><code>echo $PATH</code></p>
<p>You should see a list of all sorts of directories including:</p>
<p><em>/opt/local/bin</em></p>
<p>Now the Symfony executable file should be part of your path and after invoking the symfony command<br />
you should see a list of possible options. Have a look at the <a href="http://www.symfony-project.com/askeet/1_0/1">Askeet tutorial</a>  for an introduction into starting a new Symfony project.</p>
<p>I hope this howto was useful to you. Feel free to ask any questions and I will try to answer them.</p>
<p>ps: Next time I plan on explaining my workflow in setting up web projects.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.burobjorn.nl/blog/2007/09/18/setting-up-darwinports-pear-apache2-php5-mysql5-and-symfony-on-os-x-tiger/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>mkdir() and why the default mode does not make sense</title>
		<link>http://www.burobjorn.nl/blog/2007/07/13/mkdir-and-why-the-default-mode-does-not-make-sense/</link>
		<comments>http://www.burobjorn.nl/blog/2007/07/13/mkdir-and-why-the-default-mode-does-not-make-sense/#comments</comments>
		<pubDate>Fri, 13 Jul 2007 10:36:04 +0000</pubDate>
		<dc:creator>BjornW</dc:creator>
				<category><![CDATA[geek]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://www.burobjorn.nl/blog/?p=239</guid>
		<description><![CDATA[With the function mkdir() one can create direcotories in php. According to the manual the default permission for the mkdir() function is 0777 (NB: the zero in front  means its in octal!) which means read/write and execute permissions for the owner, group and others. So the directory will be wide open. Wrong!
Most of the [...]]]></description>
			<content:encoded><![CDATA[<p>With the function <a href="http://nl3.php.net/manual/en/function.mkdir.php">mkdir()</a> one can create direcotories in php. According to the manual the default permission for the mkdir() function is 0777 (NB: the zero in front  means its in octal!) which means read/write and execute permissions for the owner, group and others. So the directory will be wide open. Wrong!</p>
<p>Most of the time &#8211; at least in my experience &#8211; the umask used on Unix/Linux systems is set  to 0022. This means that the mode of the directory will be changed using this umask. This change can  be calculated &#8211; as far as I understood &#8211; using this rule of thumb to calculate the permission of the directory created:</p>
<p><code>permissions mode - umask = permission of directory created</code></p>
<p>Or </p>
<p><code>0777 - 0022 = 0755</code></p>
<p>So in practice most of the time the directory will be created with the permissions set to 0755. This is kind of confusing when using mkdir() as I would understand that when I set the mode for the creation of a directory would be taking into account the current set umask. </p>
<p>My solution is to create a directory using mkdir() and after the succesful creation I use chmod($created_directory, 0777) to set the permission to whatever I want them to be. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.burobjorn.nl/blog/2007/07/13/mkdir-and-why-the-default-mode-does-not-make-sense/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP 4 end of life</title>
		<link>http://www.burobjorn.nl/blog/2007/07/13/php-4-end-of-life/</link>
		<comments>http://www.burobjorn.nl/blog/2007/07/13/php-4-end-of-life/#comments</comments>
		<pubDate>Fri, 13 Jul 2007 09:57:10 +0000</pubDate>
		<dc:creator>BjornW</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[geek]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://www.burobjorn.nl/blog/?p=238</guid>
		<description><![CDATA[Finally the php developers announced the end of PHP4. This means I can finally start using the features PHP5 offers without having to worry about making it compatible with PHP4. Now, I do hope that with the introduction of PHP6 it will be a lot easier to use two version (ie PHP5 and PHP6) on [...]]]></description>
			<content:encoded><![CDATA[<p>Finally the <a href="http://www.php.net/archive/2007.php#2007-07-13-1">php developers announced the end of PHP4</a>. This means I can finally start using the features PHP5 offers without having to worry about making it compatible with PHP4. Now, I do hope that with the introduction of PHP6 it will be a lot easier to use two version (ie PHP5 and PHP6) on the same server without resorting to &#8216;hacks&#8217;. Please PHP-dev team keep this in mind!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.burobjorn.nl/blog/2007/07/13/php-4-end-of-life/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
