<?xml version="1.0"?>
<?xml-stylesheet 
 href="http://www.w3.org/2000/08/w3c-synd/style.css" type="text/css"
?>
<rss version="0.91"><channel><title>Planet PHP</title><link>http://planet-php.net</link><description>People blogging about PHP</description><language>en</language><item><title>Zend_Paginator on Ibuildings Blog - Lorna Mitchell</title><link>http://www.lornajane.net/posts/2008/Zend_Paginator-on-Ibuildings-Blog</link><pubDate>Mon, 01 Dec 2008 17:39:12 +0000</pubDate><description><![CDATA[
    In case anyone thought it was a bit quiet around here - that's because I've been working on a few other bits and pieces!  Today I posted <a href="http://www.ibuildings.com/blog/archives/1531-Zend_Paginator-First-Impressions.html">an article about Zend_Paginator</a> to the Ibuildings blog.  Do stop by and have a read - and read the comments as well as there are some good tips in there too!  
    ]]></description></item><item><title>Zend_Paginator: First Impressions - Ibuildings Blog</title><link>http://www.ibuildings.com/blog/archives/1531-Zend_Paginator-First-Impressions.html</link><pubDate>Mon, 01 Dec 2008 14:15:00 +0000</pubDate><description><![CDATA[
    I have been working on a fun project recently which is built on Zend Framework.  While looking at options for paginating a large result set, I came across a Zend Framework module called Zend_Paginator ... and it does just what it says on the tin!<br />
<br />
The idea of this module is to allow collections of data to be paginated.   It takes the set, restricts the results, and can also generate the page numbers you need to move around between the resulting paginated data.  Basically it saves me writing the same pagination code multiple times and then having to fix the bug where the last result on the previous page appears on the next ... all this has been thought of already.<br />
<br />
 <br /><a href="http://www.ibuildings.com/blog/archives/1531-Zend_Paginator-First-Impressions.html#extended">Continue reading "Zend_Paginator: First Impressions"</a>
    ]]></description></item><item><title>BEPHPUG @ Dezember, 2008 -- YUMMY, TESTING! - till</title><link>http://till.vox.com/library/post/bephpug-dezember-2008----yummy-testing.html?_c=feed-rss-full</link><pubDate>Mon, 01 Dec 2008 11:50:06 +0000</pubDate><description><![CDATA[    <p>Diesen Monat laden wir zu einem Vortrag mit Max Horvath zum Thema Tesing_SeleniumDSL ein.</p><p><em>(English: This month's meeting features a session with Max Horvath about Testing_SeleniumDSL. Attending is free!)</em></p><p>Die Eckdaten:</p><blockquote><p>Thema: <strong>Tesing_SeleniumDSL</strong> (Max Horvath, <a class="snap_shots" href="http://studivz.de/">StudiVZ</a>)<br />Wann: 3. Dezember, 2008, 20:30 Uhr<br />Wo: Z-Bar, Bergstr. 2, Berlin-Mitte (<a class="snap_shots" href="http://maps.google.de/maps?f=q&hl=de&geocode=&q=Bergstrasse+2,+10115+Berlin,+Germany&sll=40.707247,-74.007404&sspn=0.007043,0.013819&ie=UTF8&ll=52.53066,13.395681&spn=0.011304,0.027637&z=15">Google Maps</a>)<br />Kosten: <em>frei</em><br /></p></blockquote>     <p style="clear:both;"> 
    <a href="http://till.vox.com/library/post/bephpug-dezember-2008----yummy-testing.html?_c=feed-rss-full#comments">Read and post comments</a>   |   
    <a href="http://www.vox.com/share/6a00c2251d8a1b549d01098111b0d8000c?_c=feed-rss-full">Send to a friend</a> 
</p>
 
            ]]></description></item><item><title>OSDC is here! - James McLean</title><link>http://blog.phpguy.org/2008/12/01/osdc-is-here/</link><pubDate>Mon, 01 Dec 2008 00:28:28 +0000</pubDate><description><![CDATA[<p>Been a while since I posted here, but I thought this was worthy of a mention: Tomorrow the Open Source Developers Conference (OSDC) begins in Sydney - and I’m quite nervous <img src='http://blog.phpguy.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I’m presenting my talk ‘Improving PHP Application Peformance with APC’ at the conference on Wednesday - my first conference and my first presentation, so needless to say - I’m a little nervous and apprehensive that things won’t go so well <img src='http://blog.phpguy.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I’ve practiced my presentation in front of my workmates and they were mostly happy with it - I have learned though that while it may flow in your head, it may not flow when you’re speaking out loud! Following that I’ve got some tweaks to make to my presentation better, so it should all be OK come Wednesday <img src='http://blog.phpguy.org/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>So, if you’re attending <a title="OSDC" href="http://www.osdc.com.au">OSDC</a> in Sydney this week, come and check out my presentation on Wednesday and see how I go!</p>
<p>I’ll post my slides on my blog once my presentation is over.</p>
<p>Wish me luck!</p>
]]></description></item><item><title>dojo.beer(2) - Wolfram Kriesing</title><link>http://wolfram.kriesing.de/blog/index.php/2008/dojobeer2</link><pubDate>Sun, 30 Nov 2008 17:15:58 +0000</pubDate><description><![CDATA[<p>We from uxebu have organized the second dojo.beer and are happy to have won Mayflower to jump in sponsoring the location here in Munich, Germany. On friday the 5th december we will warm up with some dinner and some beer in some place here in Munich. The real thing will be on the 6th at the Mayflower office, doors will be opened at 12:00 and we are hoping for a lot of talks from various people, to see how the are using dojo and we are also hoping to have interesting talks providing some useful input and may be even new stuff to learn. Bring your laptop and let’s hack away. If you have something special you need to have solved there will be someone who can help, for sure. From beginners to experts everyone is welcome. You don’t know nothing about dojo yet, but are interested you are right at the dojo.beer. You are a long time dojo user and want to dive into the depths of dojo, you are also perfect at the dojo.beer. So let’s have a great time and join us at the dojo.beer().</p>
<p>Some selected topics will (hopefully) be: functional programming with dojo, i18n, dojango, dojo build, dojo+Adobe AIR, deft - the dojo experimental flex technology, dojo and Zend Framework and many more.</p>
<p>Find all the details here <a href="http://dojo.beer.mixxt.de/networks/events/show_event.3032">dojo.beer.mixxt.de</a>.</p>
]]></description></item><item><title>The Secret to Making Money Online - Demian Turner</title><link>http://phpkitchen.com/2008/11/the-secret-to-making-money-online/</link><pubDate>Sat, 29 Nov 2008 19:31:22 +0000</pubDate><description><![CDATA[<p>via <a href="http://omnisio.com/startupschool08/david-heinemeier-hansson-at-startup-school-08">David Heinemeier Hansson at Startup School 08</a>. David Heinemeier Hansson, creator of the Ruby on Rails framework and Partner at 37Signals gives insight into creating a profitable startup company.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="520" height="276" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="bgcolor" value="#FFFFFF" /><param name="quality" value="high" /><param name="allowscriptaccess" value="always" /><param name="allowfullscreen" value="true" /><param name="src" value="http://omnisio.com/bin/Embed.swf?embedID=cieAhMVIir3yfaadbiFy2w&autoPlay=0" /><embed type="application/x-shockwave-flash" width="520" height="276" src="http://omnisio.com/bin/Embed.swf?embedID=cieAhMVIir3yfaadbiFy2w&autoPlay=0" allowfullscreen="true" allowscriptaccess="always" quality="high" bgcolor="#FFFFFF"></embed></object><br />
<a href="http://www.gigyamailbutton.com/wildfire/gigyamailbutton.ashx?url=aHR*cDovL3d3dy5naWd5YS5jb2*vd2lsZGZpcmUvd2Zwb3AuYXNweD9tb2R1bGU9ZW1haWwmdXJsPWh*dHAlM*ElMkYlMkZvbW5pc2lvJTJFY29tJTJGdiUyRlpXNFdUVUdkamhHJTJGZGF2aWQlMkRoZWluZW1laWVyJTJEaGFuc3NvbiUyRGF*JTJEc3RhcnR1cCUyRHNjaG9vbCUyRDA4" target="_blank"><img src="http://cdn.gigya.com/wildfire/i/includeShareButton.gif" border="0" alt="" width="60" height="20" /></a></p>
<p>Check out the whole <a href="http://omnisio.com/startupschool08">Startup School ‘08 Series</a>.<a href="http://www.gigyamailbutton.com/wildfire/gigyamailbutton.ashx?url=aHR*cDovL3d3dy5naWd5YS5jb2*vd2lsZGZpcmUvd2Zwb3AuYXNweD9tb2R1bGU9ZW1haWwmdXJsPWh*dHAlM*ElMkYlMkZvbW5pc2lvJTJFY29tJTJGdiUyRlpXNFdUVUdkamhHJTJGZGF2aWQlMkRoZWluZW1laWVyJTJEaGFuc3NvbiUyRGF*JTJEc3RhcnR1cCUyRHNjaG9vbCUyRDA4" target="_blank"></a><img style="visibility: hidden; width: 0px; height: 0px;" src="http://counters.gigya.com/wildfire/IMP/CXNID=2000002.0NXC/bT*xJmx*PTEyMjc5ODU4NTcxNjAmcHQ9MTIyNzk4NTkwMjE4NyZwPTE5MzUwMSZkPSZnPTEmdD*mbz1lZmI*YzljYmQ1YzM*NTY1OWZmMjdjNzM1ODFjNGQxMg==.gif" border="0" alt="" width="0" height="0" /></p>
]]></description></item><item><title>Freezing and Thawing PHP Objects - Sebastian Bergmann</title><link>http://sebastian-bergmann.de/archives/831-Freezing-and-Thawing-PHP-Objects.html</link><pubDate>Sat, 29 Nov 2008 19:10:00 +0000</pubDate><description><![CDATA[
    <p>One of the many new features that have been added for <a href="http://cvs.php.net/viewvc.cgi/php-src/NEWS?view=markup&pathrev=PHP_5_3">PHP 5.3</a> is the <code>setAccessible()</code> method of the <code>ReflectionProperty</code> class that is part of PHP's <a href="http://www.php.net/reflection">Reflection API</a>. This method makes <code>protected</code> and <code>private</code> attributes (unfortunately, the class is called <code>ReflectionProperty</code> instead of <code>ReflectionAttribute</code>) of a class or object accessible for the <code>ReflectionProperty::getValue()</code> and <code>ReflectionProperty::setValue()</code> methods, thus making <code>protected</code> and <code>private</code> attributes "open" for full read and write access from the outside.</p><p>Among other use cases, this addition to PHP's <a href="http://en.wikipedia.org/wiki/Meta_Programming">meta programming</a> capabilities makes the customized <a href="http://en.wikipedia.org/wiki/Serialization">serialization</a> of objects possible as illustrated by the following proof-of-concept implementation:</p><dl><dd><pre class="programlisting"><code><span class="default">&lt;?php</span><br/><span class="keyword">class</span><span class="default"> </span><span class="default">Object_Freezer</span><br/><span class="keyword">{</span><br/><span class="default">    </span><span class="default">public</span><span class="default"> </span><span class="keyword">static</span><span class="default"> </span><span class="keyword">function</span><span class="default"> </span><span class="default">freeze</span><span class="keyword">(</span><span class="default">$object</span><span class="keyword">)</span><br/><span class="default">    </span><span class="keyword">{</span><br/><span class="default">        </span><span class="default">$state</span><span class="default">     </span><span class="keyword">=</span><span class="default"> </span><span class="keyword">array</span><span class="keyword">(</span><span class="keyword">)</span><span class="keyword">;</span><br/><span class="default">        </span><span class="default">$reflector</span><span class="default"> </span><span class="keyword">=</span><span class="default"> </span><span class="keyword">new</span><span class="default"> </span><span class="default">ReflectionObject</span><span class="keyword">(</span><span class="default">$object</span><span class="keyword">)</span><span class="keyword">;</span><br/> <br/><span class="default">        </span><span class="keyword">foreach</span><span class="default"> </span><span class="keyword">(</span><span class="default">$reflector</span><span class="keyword">-></span><span class="default">getProperties</span><span class="keyword">(</span><span class="keyword">)</span><span class="default"> </span><span class="keyword">as</span><span class="default"> </span><span class="default">$attribute</span><span class="keyword">)</span><span class="default"> </span><span class="keyword">{</span><br/><span class="default">            </span><span class="default">$attribute</span><span class="keyword">-></span><span class="default">setAccessible</span><span class="keyword">(</span><span class="default">TRUE</span><span class="keyword">)</span><span class="keyword">;</span><br/><span class="default">            </span><span class="default">$state</span><span class="keyword">[</span><span class="default">$attribute</span><span class="keyword">-></span><span class="default">getName</span><span class="keyword">(</span><span class="keyword">)</span><span class="keyword">]</span><span class="default"> </span><span class="keyword">=</span><br/><span class="default">            </span><span class="default">$attribute</span><span class="keyword">-></span><span class="default">getValue</span><span class="keyword">(</span><span class="default">$object</span><span class="keyword">)</span><span class="keyword">;</span><br/><span class="default">        </span><span class="keyword">}</span><br/> <br/><span class="default">        </span><span class="keyword">return</span><span class="default"> </span><span class="keyword">array</span><span class="keyword">(</span><br/><span class="default">          </span><span class="string">'className'</span><span class="default"> </span><span class="keyword">=></span><span class="default"> </span><span class="default">get_class</span></code></pre></dd></dl><p><i>Truncated by Planet PHP, read more at <a href="http://sebastian-bergmann.de/archives/831-Freezing-and-Thawing-PHP-Objects.html">the original</a> (another 14273 bytes)</i></p>]]></description></item><item><title>Introduction To Xajax - Kevin Waterson</title><link>http://www.phpro.org/tutorials/Introduction-To-Xajax.html</link><pubDate>Sat, 29 Nov 2008 04:48:10 +0000</pubDate><description><![CDATA[The Xajax library provides a useful and simple method of generating asynchronous requests with next to not knowledge of javascript. All the javascript code is generated internally and leaves the developer to simply implement PHP functions.
This tutorials is an absolute basic beginners guide to getting started with xajax. Full source code is provided with an explaination of how the process works.]]></description></item><item><title>Speaking at PHP Quebec 2009 in Montreal - Stefan Priebsch</title><link>http://www.priebsch.de/2008/11/speaking-at-php-quebec-2009-in-montreal/</link><pubDate>Fri, 28 Nov 2008 23:30:23 +0000</pubDate><description><![CDATA[I have been invited to speak at the PHP Quebec Conference 2009. In  Managing the Software Lifecycle of PHP applications, I will present various best practices that can help to complete PHP projects on time and on budget. I will cover topics like development processes, quality assurance, deployment, and maintenance of PHP code and [...]]]></description></item><item><title>It turns out, I was wrong - Marco Tabini</title><link>http://mtabini.blogspot.com/2008/11/it-turns-out-i-was-wrong.html</link><pubDate>Fri, 28 Nov 2008 20:30:37 +0000</pubDate><description><![CDATA[<div xmlns='http://www.w3.org/1999/xhtml'><img width='278' height='194' src='http://lh6.ggpht.com/_XOxWw98XW4I/STBLRmrvAOI/AAAAAAAAACY/XZOyxn106WQ/%5BUNSET%5D.png?imgmax=800' style='max-width: 800px; float: left; margin-top: 10px; margin-bottom: 10px; margin-right: 10px;'/>In the past, I have not been shy about sharing <a href='http://mtabini.blogspot.com/2007/07/gentlemen-start-your-whining.html'>my opinion</a> that the impending death of PHP 4 would have wreaked all sorts of havoc over the PHP world. I am glad to say that I've been wrong—dead wrong, in fact—and that I have never been as happy to be so far off the mark before.<br/><br/>The fact that I was wrong, however, me no likey. After all, I did my research, and wasn't just basing my opinion on divination—I had some hard data and plenty of research statistics to back me up.<br/><br/>It turns out, I was simply using the <i>wrong</i> data. Most of the statistics on PHP usage are based on mostly-automated research done on PHP hosts. This gives you a great general view of the makeup of PHP usage on the Internet, but it really tells you nothing of <i>the people</i> who use it.<br/><br/>Interestingly enough, we just ran our yearly subscriber survey about a year or so ago—and, had I had access to the results back in the summer when I was busy lamenting the status of things, I would have been able to tell that the statistics I was using were very misleading.<br/><br/>If you look at the image above, you'll see that the readers who replied to the survey <i>have</i> switched to PHP 5. In fact, only a meager 8% sticks with PHP 4, while the vast majority uses some version of PHP 5.<br/><br/>Under these circumstances, therefore, the decision to EOL PHP 4 was a very good one—but the fact remains that it was made without any hard data to back it up.<br/></div>]]></description></item><item><title>txforward 1.0.5 - PECL: Latest releases</title><link>http://pecl.php.net/package/txforward/download/1.0.5/</link><pubDate>Sun, 30 Nov 2008 23:18:48 +0000</pubDate><description><![CDATA[pecl channel fix
]]></description></item><item><title>PHP_CompatInfo 1.9.0b1 - PEAR: Latest releases</title><link>http://pear.php.net/package/PHP_CompatInfo/download/1.9.0b1/</link><pubDate>Sun, 30 Nov 2008 21:13:57 +0000</pubDate><description><![CDATA[* bugs<br />
- __FILE__ and __LINE__ constants were not detected with 1.9.0a1<br />
<br />
* news<br />
- With first beta release, API 1.9.0 is marked as complete and will not change until stable.<br />
<br />
You are welcome to read my presentation about the new API at<br />
http://pear.laurent-laville.org/pepr/PHP_CompatInfo/api190/<br />
<br />
Do not hesitate to give me your feedback. More we test it, more stable will be<br />
the final release.<br />
<br />
* roadmap<br />
- 2008-11-23 first alpha version<br />
- 2008-11-30 first beta version<br />
- 2008-12-19 stable release 1.9.0
 ]]></description></item><item><title>txforward 1.0.4 - PECL: Latest releases</title><link>http://pecl.php.net/package/txforward/download/1.0.4/</link><pubDate>Sun, 30 Nov 2008 18:53:13 +0000</pubDate><description><![CDATA[pecl channel fix
]]></description></item><item><title>File_DeliciousLibrary 0.1.1 - PEAR: Latest releases</title><link>http://pear.php.net/package/File_DeliciousLibrary/download/0.1.1/</link><pubDate>Sun, 30 Nov 2008 14:22:02 +0000</pubDate><description><![CDATA[* Fixed bug 14818: Unit test failures in CVS. (Patch provided by Daniel O'Connor.)
 ]]></description></item><item><title>Text_Password 1.1.1 - PEAR: Latest releases</title><link>http://pear.php.net/package/Text_Password/download/1.1.1/</link><pubDate>Sun, 30 Nov 2008 13:45:04 +0000</pubDate><description><![CDATA[* Fixed bug #12220: potential problems with global var use (Patch by Christian Weiske)
 ]]></description></item><item><title>Payment_DTA 1.2.1 - PEAR: Latest releases</title><link>http://pear.php.net/package/Payment_DTA/download/1.2.1/</link><pubDate>Sat, 29 Nov 2008 20:27:16 +0000</pubDate><description><![CDATA[[-] input validation for overlong account/bank numbers<br />
[-] use intval() and number_format() to ensure correct number output<br />
[*] more characters handled in makeValidString()<br />
[+] new method: count()<br />
( [+] Added   [-] Fixed   [*] Improved   [!] Note )
 ]]></description></item><item><title>Services_Blogging 0.2.3 - PEAR: Latest releases</title><link>http://pear.php.net/package/Services_Blogging/download/0.2.3/</link><pubDate>Sat, 29 Nov 2008 13:40:47 +0000</pubDate><description><![CDATA[- Fix bug #15028: URL with trailing slash gives error [cweiske]<br />
- Coding standards cleanup<br />
- Add more docblocks, enhance existing ones (e.g. factory exceptions)<br />
- Set client version correctly
 ]]></description></item><item><title>expect 0.2.5 - PECL: Latest releases</title><link>http://pecl.php.net/package/expect/download/0.2.5/</link><pubDate>Thu, 27 Nov 2008 10:13:36 +0000</pubDate><description><![CDATA[Fixed bug #14768 (configure error in Ubuntu 8.04)
]]></description></item><item><title>Validate_ptBR 0.5.5 - PEAR: Latest releases</title><link>http://pear.php.net/package/Validate_ptBR/download/0.5.5/</link><pubDate>Thu, 27 Nov 2008 00:48:41 +0000</pubDate><description><![CDATA[- Fixed Bug #12783 (thanks to jhenrique)<br />
- Fixed Bug #11823  phpcs/Coding Standards issues highlighted.<br />
- Avoid two strlen calls on pis() - cosmetic changes<br />
- PHP test updated<br />
- add new method pis()
 ]]></description></item><item><title>Validate_ptBR 0.5.6 - PEAR: Latest releases</title><link>http://pear.php.net/package/Validate_ptBR/download/0.5.6/</link><pubDate>Thu, 27 Nov 2008 00:36:21 +0000</pubDate><description><![CDATA[- Fixed Bug #12783 (thanks to jhenrique)<br />
- Fixed Bug #11823  phpcs/Coding Standards issues highlighted.<br />
- Avoid two strlen calls on pis() - cosmetic changes<br />
- PHP test updated
 ]]></description></item></channel></rss>
