<?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>raspi.fi &#187; PHP</title>
	<atom:link href="http://raspi.fi/category/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://raspi.fi</link>
	<description>raspi&#039;s homepage</description>
	<lastBuildDate>Sat, 14 Aug 2010 07:56:18 +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>TUPAS authentication service for Zend Framework</title>
		<link>http://raspi.fi/2010/08/14/tupas-authentication-service-for-zend-framework/</link>
		<comments>http://raspi.fi/2010/08/14/tupas-authentication-service-for-zend-framework/#comments</comments>
		<pubDate>Sat, 14 Aug 2010 07:56:18 +0000</pubDate>
		<dc:creator>raspi</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[zf-tupas]]></category>

		<guid isPermaLink="false">http://raspi.fi/?p=88</guid>
		<description><![CDATA[TUPAS is authentication service used by finnish banks. I created Zend_Service for it. See project site for code and examples.
]]></description>
			<content:encoded><![CDATA[<p>TUPAS is authentication service used by finnish banks. I created Zend_Service for it. See <a href="http://github.com/raspi/zf-tupas">project site</a> for code and examples.</p>
]]></content:encoded>
			<wfw:commentRss>http://raspi.fi/2010/08/14/tupas-authentication-service-for-zend-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iMagickFX &#8211; image effects for the people</title>
		<link>http://raspi.fi/2010/08/02/imagickfx-image-effects-for-the-people/</link>
		<comments>http://raspi.fi/2010/08/02/imagickfx-image-effects-for-the-people/#comments</comments>
		<pubDate>Mon, 02 Aug 2010 16:45:32 +0000</pubDate>
		<dc:creator>raspi</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[iMagickFx]]></category>

		<guid isPermaLink="false">http://raspi.fi/?p=80</guid>
		<description><![CDATA[I just started new project called iMagickFX which adds possibility to add different effects to images easily.
Like so:

$im = new iMagickFx('example.jpg');
$im-&#62;fxCropResize(100, 100)-&#62;fxReflection('white', 0.9);

$im = new iMagickFx('example.jpg');
$im-&#62;fxCropResize(100, 100)-&#62;fxRoundCorners()-&#62;fxDropShadow();

Currently it contains only four effects. Reflection, drop shadow, greyscaling and resizing but more is coming!

]]></description>
			<content:encoded><![CDATA[<p>I just started new project called <a href="http://github.com/raspi/iMagickFx">iMagickFX</a> which adds possibility to add different effects to images easily.</p>
<p>Like so:</p>
<pre class="brush: php;">
$im = new iMagickFx('example.jpg');
$im-&gt;fxCropResize(100, 100)-&gt;fxReflection('white', 0.9);

$im = new iMagickFx('example.jpg');
$im-&gt;fxCropResize(100, 100)-&gt;fxRoundCorners()-&gt;fxDropShadow();
</pre>
<p>Currently it contains only four effects. Reflection, drop shadow, greyscaling and resizing but more is coming!</p>
<pre><img class="size-large wp-image-84 alignnone" title="imfx" src="http://raspi.fi/wp-content/uploads/2010/08/imfx-369x1024.jpg" alt="imfx" width="369" height="1024" /></pre>
]]></content:encoded>
			<wfw:commentRss>http://raspi.fi/2010/08/02/imagickfx-image-effects-for-the-people/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Minimal feedback form with ZF</title>
		<link>http://raspi.fi/2009/10/04/minimal-feedback-form-with-zf/</link>
		<comments>http://raspi.fi/2009/10/04/minimal-feedback-form-with-zf/#comments</comments>
		<pubDate>Sat, 03 Oct 2009 23:01:00 +0000</pubDate>
		<dc:creator>raspi</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://raspi.fi/?p=40</guid>
		<description><![CDATA[Here&#8217;s minimal feedback form example using Zend Framework 1.9.2 without  MVC.

&#60;?php
ignore_user_abort(true);
header(&#34;Content-Type: text/html; charset=utf-8&#34;)

error_reporting(E_ALL);
ini_set('display_errors', '1');

ini_set('magic_quotes_gpc', false);
ini_set('magic_quotes_runtime', false);

ini_set('default_charset', 'UTF-8');

ini_set('iconv.input_encoding', 'UTF-8');
ini_set('iconv.output_encoding', 'UTF-8');
ini_set('iconv.internal_encoding', 'UTF-8');

function stripinputslashes(&#38;$input)
{
  if (is_array($input))
  {
    foreach ($input as $key =&#62; $value)
    {
      switch (gettype($value))
      {
   [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s minimal feedback form example using Zend Framework 1.9.2 without  MVC.</p>
<pre class="brush: php;">
&lt;?php
ignore_user_abort(true);
header(&quot;Content-Type: text/html; charset=utf-8&quot;)

error_reporting(E_ALL);
ini_set('display_errors', '1');

ini_set('magic_quotes_gpc', false);
ini_set('magic_quotes_runtime', false);

ini_set('default_charset', 'UTF-8');

ini_set('iconv.input_encoding', 'UTF-8');
ini_set('iconv.output_encoding', 'UTF-8');
ini_set('iconv.internal_encoding', 'UTF-8');

function stripinputslashes(&amp;$input)
{
  if (is_array($input))
  {
    foreach ($input as $key =&gt; $value)
    {
      switch (gettype($value))
      {
        default: break;
        case 'string':
          $input[$key] = stripinputslashes($value);
        break;
      } // /switch
    } // /foreach
  } // /if
  else
  {
    switch (gettype($input))
    {
      default: break;
      case 'string':
        $input = stripslashes($input);
      break;
    } // /switch
  } // /else

  return true;
} // /function

if (version_compare(phpversion(), 6) === -1)
{
  if (function_exists(&quot;get_magic_quotes_gpc&quot;) &amp;&amp; get_magic_quotes_gpc() === 1)
  {
    array_walk_recursive($_GET, 'stripinputslashes');
    array_walk_recursive($_REQUEST, 'stripinputslashes');

    if (isset($_POST))
    {
      array_walk_recursive($_POST, 'stripinputslashes');
    } // /if

  } // /if
} // /if

// Add library path
set_include_path(implode(PATH_SEPARATOR, array(
  realpath(dirname(__FILE__) . '/../library'),
  get_include_path(),
)));

// Enable autoloader
require_once 'Zend/Loader/Autoloader.php';
Zend_Loader_Autoloader::getInstance();

$view = new Zend_View();

$form = new Zend_Form();
$form-&gt;setView($view);
$form-&gt;setMethod(Zend_Form::METHOD_POST);
$form-&gt;setAction('/');

$submit = new Zend_Form_Element_Submit('submit');
$submit-&gt;setLabel('OK');

$email = new Zend_Form_Element_Text('email');
$email-&gt;setRequired(true);
$email-&gt;setLabel('E-mail');
$email-&gt;addFilter('StringTrim');
$email-&gt;addFilter('StringToLower');
$email-&gt;addValidator('StringLength', false, array(7));
$email-&gt;addValidator(new Zend_Validate_EmailAddress(Zend_Validate_Hostname::ALLOW_DNS, true));

$txt = new Zend_Form_Element_Textarea('text');
$txt-&gt;setRequired(true);
$txt-&gt;addFilter('StringTrim');
$txt-&gt;addValidator('StringLength', false, array(3));

// Add fields to form
$form-&gt;addElement($email);
$form-&gt;addElement($txt);
$form-&gt;addElement($submit);

if (isset($_POST) &amp;&amp; !empty($_POST))
{
  if ($form-&gt;isValid($_POST))
  {
    $values = $form-&gt;getValues();

    $m = new Zend_Mail('UTF-8');
    $m-&gt;setBodyText($values['text']);
    $m-&gt;setFrom($values['email']);
    $m-&gt;addTo('feedback@example.com');
    $m-&gt;setSubject('Feedback');
    $m-&gt;send();

    header(&quot;Location: /ok.php&quot;);
  }

}

// Output form to page
echo $form;
</pre>
<p>Page contains e-mail and free text field. E-mail address is checked against DNS. Form contents are send to feedback@example.com and given e-mail address is the sender. stripinputslashes kills all  stupid slashes from _POST data.</p>
<p>Directory structure:</p>
<pre>/home/foo/public_html/index.php (feedback form)
/home/foo/public_html/ok.php
/home/foo/library/Zend/ (ZF files)
</pre>
<p>ok.php contains something like &#8220;Thank you for giving feedback.&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://raspi.fi/2009/10/04/minimal-feedback-form-with-zf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>First site using zfComicEngine!</title>
		<link>http://raspi.fi/2009/09/26/first-site-using-zfcomicengine/</link>
		<comments>http://raspi.fi/2009/09/26/first-site-using-zfcomicengine/#comments</comments>
		<pubDate>Sat, 26 Sep 2009 19:39:21 +0000</pubDate>
		<dc:creator>raspi</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[zfComicEngine]]></category>

		<guid isPermaLink="false">http://raspi.fi/?p=33</guid>
		<description><![CDATA[Finnish Pikselinviilaajat IT comic is now using zfComicEngine. It was previously running on my non-opensource and age old code. I coded simple converter which corrected all the old links in HTML etc with PHP&#8217;s DOM and XML Starlet.
ZFCE has many similarities to old Pikselinviilaajat comic publishing engine but of course it&#8217;s all been rewritten.
If you [...]]]></description>
			<content:encoded><![CDATA[<p>Finnish <a href="http://pikselinviilaajat.net/">Pikselinviilaajat</a> IT comic is now using <a href="http://code.google.com/p/zfcomicengine/">zfComicEngine</a>. It was previously running on my non-opensource and age old code. I coded simple converter which corrected all the old links in HTML etc with PHP&#8217;s DOM and <a href="http://xmlstar.sourceforge.net/">XML Starlet</a>.</p>
<p>ZFCE has many similarities to old Pikselinviilaajat comic publishing engine but of course it&#8217;s all been rewritten.</p>
<p>If you want to try out zfCE, please use <a href="http://zfce.raspi.fi/">my demo site</a>. I&#8217;m also looking for some people with some graphical eye so that zfCE could have more default CSS files for new users.</p>
<p>I&#8217;m also <a href="http://code.google.com/p/zfcomicengine/issues/detail?id=9">planning for Flash support</a> so that you could publish animations easily too.</p>
<p>New translations are also welcome. Currently supported languages are Finnish and English.</p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 32px; width: 1px; height: 1px;">http://code.google.com/p/zfcomicengine/issues/detail?id=9</div>
]]></content:encoded>
			<wfw:commentRss>http://raspi.fi/2009/09/26/first-site-using-zfcomicengine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
