<?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>Alan Seiden's Information Technology &#187; IT</title>
	<atom:link href="http://www.alanseiden.com/category/it/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.alanseiden.com</link>
	<description>PHP, IBM i, and solutions in technology</description>
	<lastBuildDate>Mon, 23 Aug 2010 18:40:19 +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>Two techniques for retrieving SQL from Zend Framework&#8217;s database components</title>
		<link>http://www.alanseiden.com/2010/08/23/two-techniques-for-retrieving-sql-from-zend-framework-database-components/</link>
		<comments>http://www.alanseiden.com/2010/08/23/two-techniques-for-retrieving-sql-from-zend-framework-database-components/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 18:40:19 +0000</pubDate>
		<dc:creator>Alan Seiden</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://www.alanseiden.com/?p=454</guid>
		<description><![CDATA[Zend Framework&#8217;s database components can build and run queries without the developer&#8217;s having to touch the underlying SQL. Sometimes, though, developers need the SQL for diagnosing problems or to look for efficiencies. That SQL can be accessed with a choice of two main techniques: getQuery() getQuery() is a method of Zend_Db_Profiler and seems, along with [...]]]></description>
			<content:encoded><![CDATA[<p>Zend Framework&#8217;s database components can build and run queries without the developer&#8217;s having to touch the underlying SQL. Sometimes, though, developers need the SQL for diagnosing problems or to look for efficiencies. That SQL can be accessed with a choice of two main techniques:</p>
<p><strong>getQuery()</strong></p>
<p>getQuery() is a method of <a href="http://framework.zend.com/manual/en/zend.db.profiler.html">Zend_Db_Profiler</a> and seems, along with getLastQueryProfile(), to be the standard advice for retrieving SQL of a recent query:</p>
<p><code>query = $profiler-&gt;getLastQueryProfile();</code><br />
<code>echo $query-&gt;getQuery();</code></p>
<p>Yes, getQuery() works, but what if I&#8217;m not using the profiler, or I need to retrieve SQL <em>before</em> a query has run?</p>
<p><strong> __toString()</strong></p>
<p>The &#8220;magic method&#8221; __toString() is simple and can be used either before or after the query is run. When applied to a Zend_Db_Select object, it generates an SQL string.</p>
<p>From the <a href="http://framework.zend.com/manual/en/zend.db.select.html">Zend_Db_Select documentation</a>:</p>
<p><code>$select = $db-&gt;select()</code><code>-&gt;from('products');</code><br />
<code>$sql = $select-&gt;__toString();</code><br />
<code>echo "$sql\n";</code><br />
<code> </code></p>
<p><code>// The output is the string:</code><br />
<code> //   SELECT * FROM "products"</code></p>
<p>__toString() is simple to use, yet is often forgotten when discussing how to retrieve SQL from Zend_Db_Select. I recommend it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alanseiden.com/2010/08/23/two-techniques-for-retrieving-sql-from-zend-framework-database-components/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Maximize Zend Server PHP performance with Apache compression</title>
		<link>http://www.alanseiden.com/2010/08/13/maximize-zend-server-performance-with-apache-compression/</link>
		<comments>http://www.alanseiden.com/2010/08/13/maximize-zend-server-performance-with-apache-compression/#comments</comments>
		<pubDate>Fri, 13 Aug 2010 20:45:52 +0000</pubDate>
		<dc:creator>Alan Seiden</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[IBM i]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[System i]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[Zend Server]]></category>
		<category><![CDATA[iSeries]]></category>
		<category><![CDATA[compression]]></category>
		<category><![CDATA[Firebug]]></category>
		<category><![CDATA[gzip]]></category>
		<category><![CDATA[mod_deflate]]></category>
		<category><![CDATA[speed]]></category>

		<guid isPermaLink="false">http://www.alanseiden.com/?p=439</guid>
		<description><![CDATA[Faster web sites sell more products, create better user satisfaction, and even rank higher in Google searches. Try compression to boost the download speed of your Zend Server for IBM i pages. You can compress PHP output javascript, style sheets, and other text-based content. My tests show a speed improvement of 10-50%.]]></description>
			<content:encoded><![CDATA[<p>Does your site run as quickly as it could? It&#8217;s worth your time to find out. Faster web sites sell more products, improve user satisfaction, and even <a href="http://googlewebmastercentral.blogspot.com/2010/04/using-site-speed-in-web-search-ranking.html">rank higher in Google searches</a>.</p>
<p><em>Note: This tip was written for IBM i but could be adapted for other platforms as well.</em></p>
<p><strong>Benefits of Zend Server</strong></p>
<p>If you have upgraded from Zend Core to <a href="http://www.zend.com/products/server/zend-server-ibm-i">Zend Server for IBM i</a>, you have already received several  performance improvements: bytecode acceleration (Zend Optimizer+), the elimination of Zend Core&#8217;s proxy web server, and configurable Data Caching. If you upgraded from Community Edition (CE) to full Zend Server, you also get monitoring, Page Caching, and Job Queue functionality.</p>
<p><strong>Compression adds even more speed</strong></p>
<p>IBM&#8217;s Apache web server provides an additional way to speed up your Zend Server for IBM i pages. You can compress PHP output, javascript, style sheets, and other text-based content. The compressed output will automatically be decompressed and interpreted properly by all modern web browsers. My tests show a <strong>speed improvement of 10-50%</strong> from this easy technique.</p>
<p><strong>How to enable compression in 3 steps</strong></p>
<p>1. Edit ZENDSVR&#8217;s Apache configuration file, located at /www/zendsvr/conf/httpd.conf. This is a simple text file, so you may choose from several editors: IBM&#8217;s HTTP Server Admin GUI at port 2001 (if *ADMIN is started), the WRKLNK/EDTF command, or your favorite text editor (I use <a href="http://www.editpadpro.com/">EditPad Pro</a>).</p>
<p>2. Add the following two directives to the httpd.conf&#8217;s main section:</p>
<pre># Load IBM i's module that performs compression
LoadModule deflate_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM

# Specify what to compress (example: php, json, css, javascript, static html)
AddOutputFilterByType DEFLATE application/x-httpd-php application/json text/css
application/x-javascript application/javascript text/html</pre>
<p>3. Restart Zend Server using the handy <a href="http://www.alanseiden.com/wp-content/uploads/2010/08/Copy-of-Zend-Server-restart-button.png"><img class="alignnone size-full wp-image-507" title="Zend Server restart button" src="http://www.alanseiden.com/wp-content/uploads/2010/08/Copy-of-Zend-Server-restart-button.png" alt="Restart PHP button" width="122" height="20" /></a> button or <strong>STRTCPSVR SERVER(*HTTP) RESTART(*HTTP) HTTPSVR(ZENDSVR)</strong></p>
<p><strong>Measure the improvement</strong></p>
<p>I ran before-and-after tests using a sample script included with Zend Server for IBM i: http://your-server:10088/Samples/SQL_access/DB2_SQL_example.php.</p>
<p>Before compression: 31kb, loaded in 250ms (milliseconds). See the <a href="http://getfirebug.com">Firebug</a> report below (Firebug is an optional add-on for Firefox and is not required.)</p>
<div id="attachment_512" class="wp-caption alignnone" style="width: 659px"><a href="http://www.alanseiden.com/wp-content/uploads/2010/08/no-compression1.png"><img class="size-large wp-image-512     " title="no compression" src="http://www.alanseiden.com/wp-content/uploads/2010/08/no-compression1-1024x401.png" alt="Zend Server output without compression" width="649" height="254" /></a><p class="wp-caption-text">Without compression, this page was 31kb and loaded in 250ms</p></div>
<p>After compression: 4.4kb; loaded in 109ms. That&#8217;s only 14% of the size and 50% of the time! See the screen shot below.</p>
<div id="attachment_511" class="wp-caption alignnone" style="width: 651px"><a href="http://www.alanseiden.com/wp-content/uploads/2010/08/with-compression1.png"><img class="size-full wp-image-511 " title="with-compression" src="http://www.alanseiden.com/wp-content/uploads/2010/08/with-compression1.png" alt="after compression: only 4.4kb and loaded in 109ms" width="641" height="325" /></a><p class="wp-caption-text">after compression: only 4.4kb and loaded in 109ms</p></div>
<p>I highly recommend that you give output compression a try. Your Zend Server for IBM i pages will fly!</p>
<p>For more information on browser output compression, see: <a href="http://httpd.apache.org/docs/2.0/mod/mod_deflate.html" target="_blank">http://httpd.apache.org/docs/2.0/mod/mod_deflate.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.alanseiden.com/2010/08/13/maximize-zend-server-performance-with-apache-compression/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Zend Studio 7.2.1 faster, more reliable</title>
		<link>http://www.alanseiden.com/2010/07/28/zend-studio-7-2-1-faster-more-reliable/</link>
		<comments>http://www.alanseiden.com/2010/07/28/zend-studio-7-2-1-faster-more-reliable/#comments</comments>
		<pubDate>Wed, 28 Jul 2010 19:41:16 +0000</pubDate>
		<dc:creator>Alan Seiden</dc:creator>
				<category><![CDATA[IBM i]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[System i]]></category>
		<category><![CDATA[Zend Studio]]></category>
		<category><![CDATA[iSeries]]></category>

		<guid isPermaLink="false">http://www.alanseiden.com/?p=424</guid>
		<description><![CDATA[I just upgraded my copy of Zend Studio for IBM i from 7.0.2 to 7.2.1. Big improvement! My use case: I typically use Zend Studio&#8217;s &#8220;Remote Server&#8221; facility to connect to the IBM i over FTP. With 7.2.1, FTP-based files now open and save much faster than before. In addition, the FTP connection no longer [...]]]></description>
			<content:encoded><![CDATA[<p>I just upgraded my copy of <a href="http://www.zend.com/en/products/studio/studio-7-ibmi">Zend Studio for IBM i</a> from 7.0.2 to 7.2.1. Big improvement!</p>
<p>My use case: I typically use Zend Studio&#8217;s &#8220;Remote Server&#8221; facility to connect to the IBM i over FTP. With 7.2.1, FTP-based files now open and save much faster than before. In addition, the FTP connection no longer randomly disconnects the way it used to.</p>
<p>I recommend upgrading to 7.2.1, especially for anyone using FTP. It provides a smooth, hassle-free user experience.</p>
<p>Get Zend Studio here: <a href="http://www.zend.com/en/products/studio/downloads">http://www.zend.com/en/products/studio/downloads</a>. Scroll down to the edition you need. </p>
<p>Note: this product is still free to users of IBM i, a nice benefit of Zend&#8217;s relationship with IBM.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alanseiden.com/2010/07/28/zend-studio-7-2-1-faster-more-reliable/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A simple security measure</title>
		<link>http://www.alanseiden.com/2010/07/07/a-simple-security-measure/</link>
		<comments>http://www.alanseiden.com/2010/07/07/a-simple-security-measure/#comments</comments>
		<pubDate>Wed, 07 Jul 2010 13:33:39 +0000</pubDate>
		<dc:creator>Alan Seiden</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web development]]></category>

		<guid isPermaLink="false">http://www.alanseiden.com/?p=411</guid>
		<description><![CDATA[A reader recently asked me this security question: If a user enters: http://&#60;my_ip&#62;/&#60;mydirectory&#62; instead of http://&#60;my_ip&#62;/&#60;mydirectory&#62;/script.php They get a listing of all scripts/files in that directory and they can then select and execute/run those scripts. This is a real concern for us, any suggestions? The solution is to turn off directory browsing in your Apache [...]]]></description>
			<content:encoded><![CDATA[<p>A reader recently asked me this security question:</p>
<blockquote><p>If a user enters:</p>
<p>http://&lt;my_ip&gt;/&lt;mydirectory&gt;</p>
<p>instead of</p>
<p>http://&lt;my_ip&gt;/&lt;mydirectory&gt;/script.php</p>
<p>They get a listing of all scripts/files in that directory and they can then select and execute/run those scripts.</p>
<p>This is a real concern for us, any suggestions?</p></blockquote>
<p>The solution is to turn off directory browsing in your Apache configuration. To do this, make sure your Apache configuration file (probably httpd.conf or .htaccess) includes this directive:</p>
<p><strong>Options -Indexes</strong></p>
<p>Note that this directive merely prevents people from discovering the names of your files. Users who already know your file names can still access them. But <strong>Options -Indexes</strong> provides an important layer of security, preventing mischief from casual users who might otherwise stumble onto your file names by accident or design.</p>
<p>More information: <a title="Documentation for Apache's Options directive" href="http://httpd.apache.org/docs/2.2/mod/core.html#options">http://httpd.apache.org/docs/2.2/mod/core.html#options</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.alanseiden.com/2010/07/07/a-simple-security-measure/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>See me speak about web services and Zend Framework</title>
		<link>http://www.alanseiden.com/2010/05/25/see-me-speak-about-web-services-and-zend-framework/</link>
		<comments>http://www.alanseiden.com/2010/05/25/see-me-speak-about-web-services-and-zend-framework/#comments</comments>
		<pubDate>Tue, 25 May 2010 17:28:58 +0000</pubDate>
		<dc:creator>Alan Seiden</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[IBM i]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[SOAP]]></category>
		<category><![CDATA[System i]]></category>
		<category><![CDATA[Web services]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://www.alanseiden.com/?p=408</guid>
		<description><![CDATA[Join me at at Long Island PHP on June 7, 2010, where I&#8217;ll present a case study showing how I integrated Windows-based data into an IBM i-based application using SOAP with Zend Framework. The principles are the same no matter what type of servers you use. Event details: http://www.listnet.org/eventDetails.cfm?eventID=1263 There will be plenty of time [...]]]></description>
			<content:encoded><![CDATA[<p>Join me at at <a href="http://www.liphp.org/">Long  Island PHP</a> on June 7, 2010, where I&#8217;ll present a case study showing how I integrated Windows-based data into an IBM i-based application using SOAP with Zend Framework.</p>
<p>The principles are the same no matter what type of servers you use.</p>
<p>Event details: <a href="http://www.listnet.org/eventDetails.cfm?eventID=1263">http://www.listnet.org/eventDetails.cfm?eventID=1263</a></p>
<p>There will be plenty of time for questions and discussion.</p>
<p>Hope to see you there!</p>
<p>P.S. To see the slides from my past presentations, go to  <a href="../presentations/">http://www.alanseiden.com/presentations/</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alanseiden.com/2010/05/25/see-me-speak-about-web-services-and-zend-framework/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Differences Between Zend Core and Zend Server on IBM i</title>
		<link>http://www.alanseiden.com/2010/04/21/differences-between-zend-core-and-zend-server-on-ibm-i/</link>
		<comments>http://www.alanseiden.com/2010/04/21/differences-between-zend-core-and-zend-server-on-ibm-i/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 11:30:03 +0000</pubDate>
		<dc:creator>Alan Seiden</dc:creator>
				<category><![CDATA[IBM i]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[System i]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[Zend Server]]></category>

		<guid isPermaLink="false">http://www.alanseiden.com/?p=390</guid>
		<description><![CDATA[Zend Server for IBM i improves upon Zend Core&#8217;s older implementation of PHP in numerous ways. To make the migration easier, I&#8217;ve created a table that shows some of the settings and default file locations that have changed between Zend Core and Zend Server. Zend Core Zend Server Installation folder /usr/local/zend/core /usr/local/zendsvr PHP.INI /usr/local/zend/core/etc /usr/local/zendsvr/etc [...]]]></description>
			<content:encoded><![CDATA[<p>Zend Server for IBM i improves upon Zend Core&#8217;s older implementation of PHP in numerous ways. To make the migration easier, I&#8217;ve created a table that shows some of the settings and default file locations that have changed between Zend Core and Zend Server.</p>
<p><!--[if !mso]> <mce:style><!  v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} p\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} v\:textbox {display:none;} --> <!--[endif]--><!--[if !ppt]--><!-- .O 	{color:#333300; 	font-size:149%;} .O1 	{color:#333300; 	font-size:149%;} a:link 	{color:#999933 !important;} a:active 	{color:#CCCC00 !important;} a:visited 	{color:#666633 !important;} --><!-- .sld 	{left:0px !important; 	width:6.0in !important; 	height:4.5in !important; 	font-size:103% !important;} --><!--[endif]--></p>
<table style="height: 313px;" dir="ltr" cellspacing="0" cellpadding="0" width="537">
<tbody>
<tr>
<td width="186" height="32" bgcolor="#969696"></td>
<td width="186" height="32" bgcolor="#969696">
<div><strong>Zend Core</strong></div>
</td>
<td width="167" height="32" bgcolor="#969696">
<div><strong>Zend Server</strong></div>
</td>
</tr>
<tr>
<td width="186" height="31">
<div><strong>Installation folder</strong></div>
</td>
<td width="186" height="31">
<div>/usr/local/zend/core</div>
</td>
<td width="167" height="31">
<div>/usr/local/zendsvr</div>
</td>
</tr>
<tr>
<td width="186" height="29">
<div><strong>PHP.INI</strong></div>
</td>
<td width="186" height="29">
<div>/usr/local/zend/core/etc</div>
</td>
<td width="167" height="29">
<div>/usr/local/zendsvr/etc</div>
</td>
</tr>
<tr>
<td width="186" height="50">
<div><strong>Web server root(s)</strong></div>
</td>
<td width="186" height="50">
<div>/www/zendcore,<br />
/usr/local/zend/apache2</div>
</td>
<td width="167" height="50">
<div>/www/zendsvr</div>
</td>
</tr>
<tr>
<td width="186" height="50">
<div><strong>Document root</strong></div>
</td>
<td width="186" height="50">
<div>/www/zendcore/htdocs</div>
</td>
<td width="167" height="50">
<div>/www/zendsvr/htdocs</div>
</td>
</tr>
<tr>
<td width="186" height="50">
<div><strong>Zend Framework</strong></div>
</td>
<td width="186" height="50">
<div>/usr/local/Zend/ZendFramework</div>
</td>
<td width="167" height="50">
<div>/usr/local/zendsvr/share/ZendFramework</div>
</td>
</tr>
<tr>
<td width="186" height="50">
<div><strong>PHP binaries folder *<br />
</strong><strong>* where php and php-cli reside </strong></div>
</td>
<td width="186" height="50">
<div>/usr/local/zend/core/bin</div>
</td>
<td width="167" height="50">
<div>/usr/local/zendsvr/bin</div>
</td>
</tr>
<tr>
<td width="186" height="50">
<div><strong>PHP Log files</strong></div>
</td>
<td width="186" height="50">
<div>/usr/local/zend/core/logs</div>
</td>
<td width="167" height="50">
<div>/usr/local/zendsvr/<br />
var/log</div>
</td>
</tr>
<tr>
<td width="186" height="50">
<div><strong>Web user profile </strong><strong>(assign authority to it)</strong></div>
</td>
<td width="186" height="50">
<div>NOBODY</div>
</td>
<td width="167" height="50">
<div>QTMHHTTP</div>
</td>
</tr>
<tr>
<td width="186" height="27">
<div><strong>Default HTTP Port</strong></div>
</td>
<td width="186" height="27">
<div>:89</div>
</td>
<td width="167" height="27">
<div>:10088</div>
</td>
</tr>
<tr>
<td width="186" height="27">
<div><strong>Admin Interface URL</strong></div>
</td>
<td width="186" height="27">
<div>http://yourIBMi:89/ZendCore/</div>
</td>
<td width="167" height="27">
<div>http://yourIBMi:10088/ZendServer/</div>
</td>
</tr>
</tbody>
</table>
<p>If the new HTTP port of 10088 seems hard to remember, you can change it to something that&#8217;s easier to work with, such as the standard HTTP port of 80. To do that, edit <strong>/www/zendsvr/conf/httpd.conf </strong>and change <strong>Listen *:10088</strong> to <strong>Listen *:80</strong> or whatever you want. (Of course, first ensure that no other service is running on that IP/Port combination.)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alanseiden.com/2010/04/21/differences-between-zend-core-and-zend-server-on-ibm-i/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Zend Server for IBM i Is Here</title>
		<link>http://www.alanseiden.com/2010/04/21/zend-server-for-ibm-i-is-here/</link>
		<comments>http://www.alanseiden.com/2010/04/21/zend-server-for-ibm-i-is-here/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 11:22:16 +0000</pubDate>
		<dc:creator>Alan Seiden</dc:creator>
				<category><![CDATA[IBM i]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[System i]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[Zend Server]]></category>

		<guid isPermaLink="false">http://www.alanseiden.com/?p=388</guid>
		<description><![CDATA[Zend and IBM have announced an updated, streamlined version of their PHP package for IBM i, called Zend Server. I&#8217;ve been using the beta for a while but last week read an announcement showing it&#8217;s ready for general use. It combines the best of Zend Core and Zend Platform in one package. To get Zend [...]]]></description>
			<content:encoded><![CDATA[<p>Zend and IBM have announced an updated, streamlined version of their PHP package for IBM i, called Zend Server. I&#8217;ve been using the beta for a while but last week <a title="Zend Server for i/OS Now Available" href="http://www.itjungle.com/fhs/fhs041310-story02.html">read an announcement</a> showing it&#8217;s ready for general use. It combines the best of Zend Core and Zend Platform in one package.</p>
<p>To get Zend Server, go to the <a title="Zend Server for IBM i" href="http://www.zend.com/en/products/server/zend-server-ibm-i">Zend Server for IBM i</a> page and click the green &#8220;Free Download&#8221; button. This will give you the &#8220;Community Edition (CE)&#8221; version, the free version that handles all the basics for running PHP on IBM i. It even comes with a year of free online support.</p>
<p>If you want to  upgrade to the non-CE version (it doesn&#8217;t have its own name), which gives you more debugging and tracing tools, as well as Job Queue functionality and more support, you can buy a license. <a title="write to me about Zend Server" href="http://www.alanseiden.com/contact">Write to me</a> if you need help or want to buy a license for the non-CE version.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alanseiden.com/2010/04/21/zend-server-for-ibm-i-is-here/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Class &#8216;Zend_Db_Table&#8217; not found</title>
		<link>http://www.alanseiden.com/2010/03/04/class-zend_db_table-not-found/</link>
		<comments>http://www.alanseiden.com/2010/03/04/class-zend_db_table-not-found/#comments</comments>
		<pubDate>Thu, 04 Mar 2010 21:08:44 +0000</pubDate>
		<dc:creator>Alan Seiden</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://www.alanseiden.com/?p=370</guid>
		<description><![CDATA[New developers sometimes struggle with putting all of Zend Framework&#8217;s pieces together. This week someone asked me how to resolve the error: Fatal error: Class &#8216;Zend_Db_Table&#8217; not found. The answer: he needs to &#8220;require&#8221; the file containing the Zend_Db_Table class, like so: require_once 'Zend/Db/Table.php'; or (my preference) use the autoloader: // ZF 1.8 or later: [...]]]></description>
			<content:encoded><![CDATA[<p>New developers sometimes struggle with putting all of Zend Framework&#8217;s pieces together. This week someone asked me how to resolve the error:</p>
<blockquote><p><span style="font-size: small;"><strong>Fatal error</strong>: Class &#8216;Zend_Db_Table&#8217; not found. </span></p></blockquote>
<p><span style="font-size: small;">The answer: he needs to &#8220;require&#8221; the file containing the Zend_Db_Table class, like so:</span></p>
<pre>require_once 'Zend/Db/Table.php';</pre>
<p>or (my preference) use the autoloader:</p>
<pre>// ZF 1.8 or later: add these lines to your bootstrap file:
require_once 'Zend/Loader/Autoloader.php';
$loader = Zend_Loader_Autoloader::getInstance()-&gt;setFallbackAutoloader(true);</pre>
<p>ZF isn&#8217;t complicated if you know the few things you MUST use. The autoloader is one of them.</p>
<p>If you need help getting started with Zend Framework, <a title="contact me about Zend Framework mentoring, training, or troubleshooting" href="http://www.alanseiden.com/contact">contact me about Zend Framework mentoring, training, or troubleshooting</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alanseiden.com/2010/03/04/class-zend_db_table-not-found/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Zend Server beta for PHP on IBM i: I like it</title>
		<link>http://www.alanseiden.com/2010/02/03/zend-server-beta-for-php-on-ibm-i-i-like-it/</link>
		<comments>http://www.alanseiden.com/2010/02/03/zend-server-beta-for-php-on-ibm-i-i-like-it/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 19:32:41 +0000</pubDate>
		<dc:creator>Alan Seiden</dc:creator>
				<category><![CDATA[IBM i]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[System i]]></category>

		<guid isPermaLink="false">http://www.alanseiden.com/?p=351</guid>
		<description><![CDATA[I&#8217;m recommending that people try Zend Server beta for IBM i if they&#8217;re using PHP on the IBM i. Even though it&#8217;s in beta, Zend Server brings improvements over its predecessors, Zend Core and Zend Platform. Improvements include: Easy new user interface combining the best of Core and Platform Better interface makes it easier for [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m recommending that people try <a href="http://www.zend.com/en/products/server/zend-server-5-new-ibmi">Zend Server beta for IBM i</a> if they&#8217;re using PHP on the IBM i. Even though it&#8217;s in beta, Zend Server brings improvements over its predecessors, Zend Core and Zend Platform. Improvements include:</p>
<ul>
<li>Easy new user interface combining the best of Core and Platform</li>
<li>Better interface makes it easier for people to discover and use features such as code tracing and debugging</li>
<li>Elimination of mandatory proxy server (always a thorn in my side!)</li>
<li>Use of IBM&#8217;s supported, full-featured, flexible Apache server rather than the limited PASE server</li>
<li>Better performance</li>
</ul>
<p>One caveat: the current beta version (as of February, 2010) is missing some functionality that will be available in the generally available (GA) release. Temporarily missing functionality includes:</p>
<ul>
<li>no support for the mail() function (use Zend_Mail or Phpmailer instead in the meantime)</li>
<li>inclusion of an older version of the ibm_db2 driver. This version doesn&#8217;t have support for the &#8220;i5_libl&#8221; option. Ask Zend to send you the updated db2 driver if you need it.</li>
</ul>
<p>I&#8217;m looking forward to trying the next beta version and eventually the GA release.</p>
<p>I believe Zend Server will shorten the learning curve for new users and simplify advanced configurations for us &#8220;veterans.&#8221;</p>
<p>Download it here: <a href="http://www.zend.com/en/products/server/zend-server-5-new-ibmi">Zend Server beta for IBM i</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.alanseiden.com/2010/02/03/zend-server-beta-for-php-on-ibm-i-i-like-it/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PHP on IBM i (and me) at ZendCon 2009</title>
		<link>http://www.alanseiden.com/2009/09/29/php-on-ibm-i-at-zendcon-2009/</link>
		<comments>http://www.alanseiden.com/2009/09/29/php-on-ibm-i-at-zendcon-2009/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 01:12:21 +0000</pubDate>
		<dc:creator>Alan Seiden</dc:creator>
				<category><![CDATA[IBM i]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[System i]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[AS/400]]></category>
		<category><![CDATA[i5]]></category>
		<category><![CDATA[iSeries]]></category>
		<category><![CDATA[ZendCon09]]></category>

		<guid isPermaLink="false">http://www.alanseiden.com/?p=254</guid>
		<description><![CDATA[This year&#8217;s ZendCon (Oct. 20-22, 2009, in San Jose, Calif.), the premier PHP conference, features several presentations about developing with PHP on the IBM i, including one by me! Come hear me speak about &#8220;Zend Framework for Enterprise PHP on IBM i&#8221; on Tuesday, Oct. 20, 2009, at 4pm. For details, go to http://www.zendcon.com.]]></description>
			<content:encoded><![CDATA[<p>This year&#8217;s <a href="http://www.zendcon.com/">ZendCon</a> (Oct. 20-22, 2009, in San Jose, Calif.), the premier PHP conference, features several presentations about developing with PHP on the IBM i, including one by me!</p>
<p>Come hear me speak about &#8220;Zend Framework for Enterprise PHP on IBM i&#8221; on Tuesday, Oct. 20, 2009, at 4pm.</p>
<p>For details, go to <a href="http://www.zendcon.com">http://www.zendcon.com</a>.</p>
<a href="http://www.zendcon.com"><img src="http://www.alanseiden.com/wp-content/uploads/2009/09/zendcon09_speakerbutton.jpg" alt="Speaker: Zend/PHP Conference 2009" title="Zend/PHP Conference 2009 Speaker" width="160" height="160" class="size-full wp-image-262" /></a>
]]></content:encoded>
			<wfw:commentRss>http://www.alanseiden.com/2009/09/29/php-on-ibm-i-at-zendcon-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
