<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<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/"
	>

<channel>
	<title>zend &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/zend/</link>
	<description>Feed of posts on WordPress.com tagged "zend"</description>
	<pubDate>Sat, 28 Nov 2009 00:52:45 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[MVC]]></title>
<link>http://diogobesson.wordpress.com/2009/11/27/mvc/</link>
<pubDate>Fri, 27 Nov 2009 20:27:53 +0000</pubDate>
<dc:creator>diogobesson</dc:creator>
<guid>http://diogobesson.wordpress.com/2009/11/27/mvc/</guid>
<description><![CDATA[Lembro que no Conaphp de 2008 surgiu uma discussão forte sobre o MVC. Quais os papeis do model, do v]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Lembro que no Conaphp de 2008 surgiu uma discussão forte sobre o MVC. Quais os papeis do model, do view, do controller, etc. Acontece que dependendo da região e da cultura dos programadores, os conceitos variam.</p>
<p>Tem gente que coloca regra de negócio no controller, tem gente que coloca script de validação no model&#8230; Não há meios de julgar o que é certo e o que é errado, pois todas as normas (inclusive as oficiais <span style="text-decoration:line-through;">ultra secretas</span> &#8211; leiam-se caras pra burro &#8211; ABNT, IEEE e cia) são seguidas somente pelos profissionais que DESEJAM segui-las.</p>
<p>Eu penso que você deve dançar conforme a música. Se você trabalha numa empresa que segue normas rígidas, que obriga você a ler, aprender e seguir essas normas determinadas, veja essas normas como boas práticas que vão garantir com que seu trabalho não pereça após a implementação e que alguma outra pessoa vai poder realizar manutenção e adicionar novas funcionalidades ao seu sistema no futuro. Sem contar a iminente possibilidade de você ser demitido por insubordinação, desorganização e outros&#8230;</p>
<p>Porém, academicamente falando, um padrão mínimo deve ser seguido.</p>
<p>Quando se trabalha com Zend Framework, por exemplo, segue-se a seguinte referência, sem direito a discussão:</p>
<ul>
<li> <strong>Model</strong> &#8211; Esta é a parte de seu aplicativo que define sua funcionalidade básica através de abstrações. Rotinas de acesso aos dados e regras de negócio poderão ser definidas aqui.</li>
<li> <strong>View</strong> &#8211; Views definem exatamente o que será apresentado ao usuário. Geralmente os controllers fornecem dados para que cada visão possa renderizar de forma humanamente inteligível àqueles que utilizam o sistema. Views irão frequentemente obter dados do usuário.  Normalmente é aqui que você irá encontrar código HTML nos seus aplciativos MVC.</li>
<li> <strong>Controller</strong> &#8211; Controllers são responsáveis por manter a unidade do conjunto. Eles manipulam models, decidem qual view será apresentada para o usuário e, entre outros fatores, fornecem os dados necessários ao view para a renderização da tela dinâmica que será apresentada. Também repassam responsabilidades para outros controllers em algumas situações específicas. A maioria dos experts em MVC recomendam que os controllers <a href="http://weblog.jamisbuck.org/2006/10/18/skinny-controller-fat-model" target="_blank">sejam mantidos o mais enxuto possível</a>.</li>
</ul>
<p>Obviamente, <a href="http://ootips.org/mvc-pattern.html" target="_blank">há muito mais a ser dito sobre esse padrão</a>, porém essa pouca informação já é suficiente para que qualquer desenvolvedor possa ter uma noção básica sobre a teoria do MVC no desenvolvimento de aplicativos.</p>
<p>O aprendizado por trás disso diz que tudo é relativo. Que os conceitos variam de um lugar para outro, porém diz também que você DEVE seguir as normas, sejam elas quais forem, quando for desenvolver utilizando o padrão MVC.</p>
<p>um abraço,</p>
<p>Diogo Besson</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[ORM com Doctrine {$_PHP}]]></title>
<link>http://regiosouza.wordpress.com/2009/11/27/101/</link>
<pubDate>Fri, 27 Nov 2009 03:56:11 +0000</pubDate>
<dc:creator>Régio Sousa</dc:creator>
<guid>http://regiosouza.wordpress.com/2009/11/27/101/</guid>
<description><![CDATA[Comecei a pesquisar algumas alternativas para se trabalhar com ORM, ouvi falar muito bem dessa bibli]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><div id="_mcePaste"><a href="http://www.doctrine-project.org/"><img class="alignleft size-full wp-image-102" title="doctrine" src="http://regiosouza.wordpress.com/files/2009/11/doctrine.jpg" alt="" width="205" height="55" /></a>Comecei a pesquisar algumas alternativas para se trabalhar com ORM, ouvi falar muito bem dessa biblioteca <a title="Doctrine" href="http://www.doctrine-project.org/" target="_blank">Doctrine </a> e estou começando a utilizar, é uma biblioteca para se trabalhar com ORM no PHP. ORM é a sigla para Mapeamento Objecto Relacional, é a técnica de desenvolvimento que abstrai o banco de dados relacional em forma de objetos. As tabelas do banco de dados são representadas através de classes e os registros de cada tabela são representados como instâncias das classes correspondentes. Com esta técnica, o programador não precisa se preocupar com os comandos em linguagem SQL; ele irá usar uma interface de programação simples que faz todo o trabalho de persistência. O bacana é dá pra <a title="Integrando Doctrine com Zend" href="http://blog.will.eti.br/2009/integrando-o-doctrine-com-o-zend-framework/" target="_blank">integrar a Doctrine</a> com outras frames tipo <a title="Zend Framework" href="http://framework.zend.com/">Zend Framework</a>, ainda não o fiz, mas em breve irei postar alguma coisa a respeito aqui no blog, a princípio me parece bem bacana e produtivo de se utilizar essa solução. <a title="Guia de Referência" href="http://www.doctrine-project.org/documentation" target="_blank">Guia de referência da Doctrine.</a></div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Share your zend reviews and tips ]]></title>
<link>http://zendreview.wordpress.com/2009/11/25/share-your-zend-reviews-and-tips/</link>
<pubDate>Wed, 25 Nov 2009 08:21:46 +0000</pubDate>
<dc:creator>zendreview</dc:creator>
<guid>http://zendreview.wordpress.com/2009/11/25/share-your-zend-reviews-and-tips/</guid>
<description><![CDATA[Hey guys, If you&#8217;ve any experience of zend we&#8217;d love to have your comments. Either email]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Hey guys, If you&#8217;ve any experience of zend we&#8217;d love to have your comments. Either email them in or leave them as comments</p>
<p>thanks!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Tehnologii - Prolog]]></title>
<link>http://myuglycreature.wordpress.com/2009/11/23/tehnologii-prolog/</link>
<pubDate>Mon, 23 Nov 2009 01:48:45 +0000</pubDate>
<dc:creator>mbarbulescu</dc:creator>
<guid>http://myuglycreature.wordpress.com/2009/11/23/tehnologii-prolog/</guid>
<description><![CDATA[Primul gand pe care l-am avut cu totii in echipa a fost &#8220;in ce codam&#8221;. A fost usor sa tr]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Primul gand pe care l-am avut cu totii in echipa a fost &#8220;in ce codam&#8221;. A fost usor sa trecem prin cei cativa termeni, care ne mai trecusera pe la ureche, si sa alegem Metoda aia *usoara* prin care tot ce era desenat pe hartie si gandit, sa devina realitate&#8230; web. La fel de usor a fost sa incercam sa scriem primele linii de cod mai complicate ca sa ne dam seama ca trebuie sa si gusti inainte sa mananci. Si ca sa trecem in planul concretului ne-am gandit la 3 metode de a face paginile sa fie dinamice (adica sa integram o comunitate, sa avem pagini context sensibile) : un framework, un cms sau php de la 0.</p>
<p>La capitolul framework, am constatat ca este destul de popular codeigniter (http://www.codeigniter.com) si dupa vizionarea a exact doua tutoriale video cu tot cu incercat cod, am fost convinsi ca si noi putem sa dezvoltam un intreg website in 20 de minute (precum video-ul arata un blog gata in tot atatea minute). Problema cu un framework este dificultatea de a intelege cum lucreaza bibliotecile, ce trebuie sa incarci si ce module fac ceea ce zic ca fac. O problema cu care m-am  confruntat personal a fost o simpla logare. In primul rand nu exista modulul gata facut de autentificare ci trebuie supraincarcate anumite clase. In al doilea rand, voiam sa ma folosesc de cunostintele, de baza, de PHP, insa constatam ca pana si sesiunile sunt vazute altfel. Concluzia noastra este ca un framework se studiaza intai. Avantajul, totusi,  al unui astfel de framework este modelul MVC care personal mi s-a parut intuitiv si foarte aplicabil.</p>
<p>Frameworkul Zend a fost inca o propunere, laudat fiind si pentru ca php are module zend, insa nu am reusit sa trecem de configurarea acestuia.</p>
<p>Punctul doi in aceasta discutie, ar fi un Content Management System. Din pacate, tema aleasa nu se preteaza la o astfel de abordare. Sigur ca putem scrie module php pentru CMS, dar intervine si aici problema studierii sistemului. Am fi mers ori pe Joomla ori pe WordPress, care vin si cu un design gata facut si customizabil (mai putin la WordPress).</p>
<p>Solutia numarul 3 ne avantajaza cel mai mult, php de la 0.  Cateva minute pe w3schools si doua trei exemple de lucru cu baza de date face ca PHP sa nu para o necunoscuta. Exista mii de linii de sample code utilizabil si customizabil, apoi reutilizabil in cadrul aceluiasi proiect. Suntem obisnuiti sa codam in C, Java, Scheme, Haskel, Prolog, CLIPS chiar si Verilog, limbajul nu este o problema.  De asemenea partea de control (administratorul) nu trebuie sa fie extrem de complex, noi construim sistem, stim cum merge. Singurul dezavantaj este securitatea care s-ar putea sa ne dea batai de cap.</p>
<p>Cam atat pe partea de programare pe server.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Five tools every PHP programmer should know about]]></title>
<link>http://thebookplaceofmoments.wordpress.com/2009/11/21/five-tools-every-php-programmer-should-know-about/</link>
<pubDate>Sat, 21 Nov 2009 06:48:47 +0000</pubDate>
<dc:creator>chauhan04</dc:creator>
<guid>http://thebookplaceofmoments.wordpress.com/2009/11/21/five-tools-every-php-programmer-should-know-about/</guid>
<description><![CDATA[Hi Friends, Few days ago I was surfing on net to find the solution about jquery, I didn&#8217;t get ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Hi Friends,</p>
<p>Few days ago I was surfing on net to find the solution about jquery, I didn&#8217;t get the exact solution. But I found one good article which I would like to share with you.</p>
<p>It was about &#8220;Five tools every PHP programmer should know about&#8221;. Below are those five tools:</p>
<p>1) Phing &#8211; a project build system<br />
2) Xdebug &#8211; debugger and profiler tool<br />
3) PHPUnit &#8211; unit testing framework<br />
4) Propel &#8211; object-relational mapping framework<br />
5) phpMyAdmin / phpPgAdmin &#8211; web-based database administration</p>
<p>Thanks !</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Five tools every PHP programmer should know about]]></title>
<link>http://chauhanashok.wordpress.com/2009/11/21/five-tools-every-php-programmer-should-know-about/</link>
<pubDate>Sat, 21 Nov 2009 06:47:41 +0000</pubDate>
<dc:creator>chauhan04</dc:creator>
<guid>http://chauhanashok.wordpress.com/2009/11/21/five-tools-every-php-programmer-should-know-about/</guid>
<description><![CDATA[Hi Friends, Few days ago I was surfing on net to find the solution about jquery, I didn&#8217;t get ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Hi Friends,</p>
<p>Few days ago I was surfing on net to find the solution about jquery, I didn&#8217;t get the exact solution. But I found one good article which I would like to share with you.</p>
<p>It was about &#8220;Five tools every PHP programmer should know about&#8221;. Below are those five tools:</p>
<p>1) Phing &#8211; a project build system<br />
2) Xdebug &#8211; debugger and profiler tool<br />
3) PHPUnit &#8211; unit testing framework<br />
4) Propel &#8211; object-relational mapping framework<br />
5) phpMyAdmin / phpPgAdmin &#8211; web-based database administration</p>
<p>Thanks !</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Zend Server + WinCache + Windows]]></title>
<link>http://misterdai.wordpress.com/2009/11/20/zend-server-wincache-windows/</link>
<pubDate>Fri, 20 Nov 2009 12:17:31 +0000</pubDate>
<dc:creator>misterdai</dc:creator>
<guid>http://misterdai.wordpress.com/2009/11/20/zend-server-wincache-windows/</guid>
<description><![CDATA[After reading a benchmark post comparing WinCache against Zend Optimizer, on MS Web Platform and Zen]]></description>
<content:encoded><![CDATA[After reading a benchmark post comparing WinCache against Zend Optimizer, on MS Web Platform and Zen]]></content:encoded>
</item>
<item>
<title><![CDATA[About Content Management System And Relation With Your Business Needs]]></title>
<link>http://joomlatutor.wordpress.com/2009/11/20/about-content-management-system-and-relation-with-your-business-needs/</link>
<pubDate>Fri, 20 Nov 2009 01:18:25 +0000</pubDate>
<dc:creator>joomlatutor</dc:creator>
<guid>http://joomlatutor.wordpress.com/2009/11/20/about-content-management-system-and-relation-with-your-business-needs/</guid>
<description><![CDATA[If your web site contain a huge number of pages and corresponding level of difficulty in keeping tra]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p style="text-align:justify;"><strong><span style="color:#800000;">If your web site contain a huge number of pages and corresponding level of difficulty</span></strong> in keeping track of all of them, your organization rely on constant and regular web site changes, often with several people working on it and your web site contributors lack sufficient knowledge in HTML and also you need to editorially review each new page before publication. <a href="http://joomlatutor.wordpress.com/2009/11/20/about-content-management-system-and-relation-with-your-business-needs/"><span style="color:#800000;">When you are using a CMS will save a lot of time, hassle and money in the long run. </span></a></p>
<p style="text-align:justify;"><strong><span style="color:#008000;">A Content Management System, or CMS for short, is a collection of procedures used to manage work flow in a collaborative environment.</span> </strong>These procedures can be manual or computer based. Or in other word, CMS is an administrative software system that allows its users, often unskilled in HTML and web development, to update, edit and create new pages on their website.</p>
<p style="text-align:justify;">In a CMS data can be defined as almost anything &#8211; documents, movies, pictures, phone number, scientific data, etc. CMSs are frequently used for storing, controlling, revising, and publishing documentation. Content that is controlled is industry-specific. (Entertainment content differs from the design of a fighter jet). There are various terms for systems (related processes) that do this. Examples include: Web Content Management, Digital Asset Management, Digital Records Management, Electronic Content Management (and others). Synchronization of intermediate steps, and collation into a final product are common goals of each.<!--more--><br />
<strong>Basic of a CMS</strong></p>
<p style="text-align:justify;">A typical CMS works like these; a web design layout is designed and developed. Usually this entails a logo/banner at the top, standard navigation menus across the top, down the left side, and/or at the foot of the page, and a &#8216;blank&#8217; area where content is inserted, this layout format is then converted into a master template for all subsequent pages. During the process of this conversion, the CMS admin backend is integrated and tested. Web content producers are given access and instructions on how to add text and images to web pages automatically. Most CMS are usually very intuitive and easy to operate. and each generated page is saved onto a database, for future editing or deletion. More elaborate CMS can perform unique functions (such as archiving, built-in search engines, and mod rewrites), but basic functionality is still related to easy creation and editing of web pages.</p>
<p style="text-align:justify;"><strong>Types of CMS</strong></p>
<ul style="text-align:justify;">
<li>Proprietary CMS<br />
These systems are usually very expensive to purchase such as the $500,000 and up Vignette system. These high end systems however come loaded with full features and usually have excellent customer and technical support. Common uses of these systems involve very large organizations with departments that require unique functionality.</li>
<li>Open source<br />
These systems are typically free and relatively easy to install. Some of the better known open source systems include Mambo and Drupal. Because of its open source nature however, you will find a dearth of customer and technical support, however there exists a huge following and forums dedicated to the popular systems. Customization capabilities vary from system to system. Be sure to do all the necessary research before deciding on one.</li>
<li>Custom CMS<br />
These types of systems are usually preferred as they allow you to develop from scratch, your preferred functionality. Debugging is also less of an issue as your web developer, having written the codes, can easily isolate and fix problems. Bear in mind there are literally hundreds of CMS to choose from. Ranging in costs from free to over $500,000. What you do need to do, is firstly figuring out exactly what functionality your organization needs, your development budget and finally find a system that suits those needs best.The downside to installing a CMS is of course, the amount of web development needed initially. While you are able to obtain free open source CMS programs, you still need to hire someone experienced and capable enough to integrate it correctly. This initial expense however, is usually a necessary evil and is justified as you avoid the need of hiring or outsourcing your webmastering needs down the road.</li>
</ul>
<p style="text-align:justify;">Ultimately a CMS is meant to make life easier, not creating new rigid standards that require stop gap hacks or workaround solutions.</p>
<p><span style="text-decoration:line-through;"><em>copas from</em> <a href="http://globaltor.com/e-development/general-dev/10-about-content-management-system-and-relation-with-your-business-needs" target="_blank"> Globaltor &#8211; About Content Management System And Relation With Your Business Needs</a></span></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Build iGoogle-Like Personal Information Dashboards using Picok ]]></title>
<link>http://mitulmpatel.wordpress.com/2009/11/19/build-igoogle-like-personal-information-dashboards-using-picok/</link>
<pubDate>Thu, 19 Nov 2009 06:12:53 +0000</pubDate>
<dc:creator>mitulmpatel</dc:creator>
<guid>http://mitulmpatel.wordpress.com/2009/11/19/build-igoogle-like-personal-information-dashboards-using-picok/</guid>
<description><![CDATA[Picok is an enterprise open source application useful to build iGoogle-Like personal information das]]></description>
<content:encoded><![CDATA[Picok is an enterprise open source application useful to build iGoogle-Like personal information das]]></content:encoded>
</item>
<item>
<title><![CDATA[Uncaught exception 'Zend_Gdata_App_HttpException' with message 'Expected response code 200, got 400]]></title>
<link>http://mooncakephp.wordpress.com/2009/11/17/uncaught-exception-zend_gdata_app_httpexception-with-message-expected-response-code-200-got-400/</link>
<pubDate>Tue, 17 Nov 2009 12:18:05 +0000</pubDate>
<dc:creator>joetsuihk</dc:creator>
<guid>http://mooncakephp.wordpress.com/2009/11/17/uncaught-exception-zend_gdata_app_httpexception-with-message-expected-response-code-200-got-400/</guid>
<description><![CDATA[今天我在使用 gdata(來自 PHP Zend framework) 嘗試存取一段youtube video的影片的時候遇到了標題的error. 我使用了半個小時設定一個正確的 Installtio]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>今天我在使用 <a href="http://code.google.com/intl/zh-TW/apis/gdata/articles/php_client_lib.html#gdata-installation">gdata</a>(來自 PHP Zend framework) 嘗試存取一段youtube video的影片的時候遇到了標題的error. 我使用了半個小時設定一個正確的 InstalltionChecker.php, 先排除我的伺服器已經裝有 php-xml libraries, ssl libraries, 但仍然無解. Google 沒有提供一個合用的答案.</p>
<p>最後我發現, 是youtube 判定該 video 違反了某些版權協定, 所以返回了 400錯誤碼, 正解是:</p>
<pre class="brush: php;">
&#60;?php
try {
  $yt = new Zend_Gdata_YouTube();
  $videoEntry = $yt-&#62;getVideoEntry($key);
} catch(Zend_Gdata_App_HttpException e) {
  //handle error
}
?&#62;
</pre>
<p>Today i encountered the above error when i am trying to fetch youtube data given the video id using PHP Zend framework suggested by <a href="http://code.google.com/intl/zh-TW/apis/gdata/articles/php_client_lib.html#gdata-installation">google</a>. I had made half an hour top setup the InstallationChecker.php, which shows the installation had no errors. I further debug using xdebug, cross check php-xml libraries, ssl libraries on the server, but no clue. Google do not provide a solution.</p>
<p>In the end, youtube banned the video because of copyrights, but just throw a response code 400&#8230; to solve it:</p>
<pre class="brush: php;">
&#60;?php
try {
  $yt = new Zend_Gdata_YouTube();
  $videoEntry = $yt-&#62;getVideoEntry($key);
} catch(Zend_Gdata_App_HttpException e) {
  //handle error
}
?&#62;
</pre>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Zend Studio training and PHP Certification]]></title>
<link>http://zendreview.wordpress.com/2009/11/15/zend-studio-training-and-php-certification/</link>
<pubDate>Sun, 15 Nov 2009 08:08:18 +0000</pubDate>
<dc:creator>zendreview</dc:creator>
<guid>http://zendreview.wordpress.com/2009/11/15/zend-studio-training-and-php-certification/</guid>
<description><![CDATA[Click here to see more on Zend&#8217;s training and certification &#8211; You can also get 10% off t]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><strong><a href="http://www.philosophyarchive.com/out/?u=www.kqzyfj.com/click-2324957-10708082">Click here to see more on Zend&#8217;s training and certification</a> &#8211; You can also get 10% off training with this link</strong></p>
<div id="attachment_26" class="wp-caption alignnone" style="width: 134px"><img class="size-full wp-image-26" title="zend exam" src="http://zendreview.wordpress.com/files/2009/11/zend-exam.jpg" alt="zend exam" width="124" height="97" /><p class="wp-caption-text">A sample answer to the Zend exam?</p></div>
<p>Zend offer comprehensive training to go with the Zend Framework and Zend Studio. You can get a year of support with an online training package together from zend (click above for more info). You can also take Zend PHP 5 Certification exams, and their course of the fundamentals of the Zend framework. Zend training is provided on certain dates through the online meeting tool WebEx, supplying training in real time. You will need to take your zend training course online within  year of purchasing.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Zend Server and Zend Server Community Edition]]></title>
<link>http://zendreview.wordpress.com/2009/11/15/zend-server-and-zend-server-community-edition/</link>
<pubDate>Sun, 15 Nov 2009 07:35:56 +0000</pubDate>
<dc:creator>zendreview</dc:creator>
<guid>http://zendreview.wordpress.com/2009/11/15/zend-server-and-zend-server-community-edition/</guid>
<description><![CDATA[Zend Server is web server designed with a extremely efficient processing of PHP and the php based Ze]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignnone size-full wp-image-18" title="zend server" src="http://zendreview.wordpress.com/files/2009/11/zend-server.jpg" alt="zend server" width="113" height="106" /></p>
<p>Zend Server is web server designed with a extremely efficient processing of PHP and the php based Zend Framework in mind. Zend Server community edition is free and has a complete stack just for php that can run non-critical applications very efficiently. It is easier to install than some other webservers without a company backing the install pricedure. The paid for Zend Server is more appropriate for crticial enterprise level applications that require rigorous code testing and full Java connectivity.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Zend Framework Review]]></title>
<link>http://zendreview.wordpress.com/2009/11/15/zend-framework-review/</link>
<pubDate>Sun, 15 Nov 2009 07:12:30 +0000</pubDate>
<dc:creator>zendreview</dc:creator>
<guid>http://zendreview.wordpress.com/2009/11/15/zend-framework-review/</guid>
<description><![CDATA[The Zend frame work is an open source oop framework that is run on PHP 5. It is licensed under the c]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignnone size-full wp-image-8" title="zend" src="http://zendreview.wordpress.com/files/2009/11/zend1.jpg" alt="zend" width="101" height="102" /></p>
<p>The Zend frame work is an open source oop framework that is run on PHP   5. It is licensed under the commercially friendly New BSD License to   make it appropriate for buisienss use. It was started in 2005 to compete   with existing web frameworks such as Ruby on Rails and has quickly   grown, with Zend.com now reporting over 10 million downloads. The   support has also quickly grown to what you would expect from an   enterprise level framework, with a 1000+ page reference guide and over   500 examples.  The Zend framework has a learning curve that is simliarly quick to that   of PHP, developers can fall back into standard php when required and   standard design patterns such as MVC are supported but not required.</p>
<p>The   Zend Server is also available to allow you to run the Zend Framework   with native OS support and caching optimisations; though the Zend   framework can run on other servers such as Apache, the Zend server   provides optimisations such as opcode support for quick execution at the   native level. Zend studio provides easy generation of MVC code   generation and tightly integrated editing for rapid development of Zend   framework applications. Zend Studio costs, in contrast to the Zend   Framework itself and the community edition of Zend Server which are both   free.</p>
<p>All code that is merged into the main branch of the Zend Framework   requires unit tests that cover 80% of the code meaning any stable   branchds are very stable.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Zend Framework + PHP]]></title>
<link>http://junioalbino.wordpress.com/2009/11/14/zend-framework-php/</link>
<pubDate>Sat, 14 Nov 2009 04:19:17 +0000</pubDate>
<dc:creator>Junio</dc:creator>
<guid>http://junioalbino.wordpress.com/2009/11/14/zend-framework-php/</guid>
<description><![CDATA[Estou fazendo pesquisa sobre Zend Framework + PHP A seguir posto links relevantes: Comunidades e sit]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignnone" title="Zend Studio" src="http://www.rapee3.com/programs/images/592009-e62e6.jpg" alt="" width="198" height="252" /></p>
<h4>Estou fazendo pesquisa sobre Zend Framework + PHP</h4>
<p>A seguir posto links relevantes:</p>
<h4><strong>Comunidades e sites sobre PHP:</strong></h4>
<ul>
<li><a title="PHP Brasil" href="http://phpbrasil.com/">PHP Brasil</a></li>
<li><a title="PHP Mania" href="http://www.phpmania.org/index.php">PHP Mania</a></li>
<li><a title="Revista PHP" href="http://www.revistaphp.com.br/">Revista PHP</a></li>
<li><a title="Site oficial do PHP" href="http://php.net/index.php">Site oficial do PHP</a></li>
</ul>
<h4><strong>Comunidades e sites sobre Zend:</strong></h4>
<ul>
<li><a href="http://www.zfbrasil.com/">Zend Brasil</a></li>
<li><a title="Site oficial do Zend" href="http://www.zend.com/en/">Site oficial do Zend</a></li>
<li><a title="IDE Zend Studio" href="http://www.zend.com/en/products/studio/">IDE Zend Studio</a></li>
<li><a title="Zend Framework" href="http://framework.zend.com/">Zend Framework</a></li>
<li><a title="Instalando o Zend no Windows" href="http://framework.zend.com/wiki/display/ZFDEV/Installing+Zend+Framework+on+Windows">Instalando o Zend no Windows</a></li>
</ul>
<h4>Livros sobre Zend:</h4>
<ul>
<li><a title="Zend Framework em Ação" href="http://www.linuxmall.com.br/index.php?product_id=6275">Zend Frameword em Ação</a></li>
<li><a title="Livro Zend Frameword" href="http://novatec.com.br/livros/zend/">Zend Frameword: Desenvolvimento em PHP Orientado a Objetos com MVC</a></li>
<li><a title="Livro Guia de Programação com Zend Framework" href="http://www.linuxmall.com.br/index.php?product_id=5822">Guia de Programação com Zend Framework</a></li>
</ul>
<h4>Apostilas sobre PHP:</h4>
<ul>
<li><a title="Apostilas  de PHP" href="http://cid-b8bb8a2cfc310d6e.skydrive.live.com/self.aspx/Sistemas/Apostilas%20de%20PHP.zip">Apostilas em .zip</a></li>
</ul>
<h4>Artigos sobre Zend:</h4>
<ul>
<li><a title="Frameworks no PHP" href="http://imasters.uol.com.br/artigo/13718/php/frameworks_no_php_o_que_quando_por_que_e_qual/">Frameworks no PHP O que, quando, por que e qual?</a></li>
<li><a title="Zend Framework" href="http://imasters.uol.com.br/artigo/4609/zend/zend_framework_uma_visao_geral/">Zend Framework &#8211; Uma visão geral</a></li>
<li><a title="Flex e PHP com Zend" href="http://imasters.uol.com.br/artigo/14258/zend/flex_e_php_com_zend_framework/">Flex e PHP com Zend</a></li>
</ul>
<p>Lembrando que para desenvolver Zend você deve conhecer de programação, orientação a objetos e php.</p>
<p><img style="border:medium none;position:absolute;z-index:2147483647;opacity:0.6;display:none;" src="image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAADsElEQVR4nK2VTW9VVRSGn33OPgWpYLARbKWhQlCHTogoSkjEkQwclEQcNJEwlfgD/AM6NBo1xjhx5LyJ0cYEDHGkJqhtBGKUpm3SFii3vb2956wPB/t+9raEgSs52fuus89613rftdcNH8/c9q9++oe/Vzb5P+3McyNcfm2CcPj9af9w6gwjTwzvethx3Bx3x8xwd1wNM8dMcTNUHTfFLPnX6nVmZpeIYwf3cWD/PhbrvlPkblAzVFurKS6GmmGqqComaS+qmBoTI0Ncu3mXuGvWnrJ+ZSxweDgnkHf8ndVTdbiT3M7cQp2Z31dRTecHAfqydp4ejhwazh6Zezfnu98E1WIQwB3crEuJ2Y45PBTAQUVR9X4At66AppoEVO1Q8sgAOKJJjw6Am6OquDmvHskZ3R87gW+vlHz98zpmiqphkkRVbQtsfPTOC30lJKFbFTgp83bWh7Zx/uX1B6w3hI3NkkZTqEpBRDBRzG2AQHcwcYwEkOGkTERREbLQ/8HxJwuW7zdYrzfZ2iopy4qqEspKaDYravVm33k1R91Q69FA1VBRzFIVvXbx5AgXT44A8MWP81yfu0utIR2aVK3vfCnGrcUNxp8a7gKYKiLCvY2SUvo/aNtnM3e49ucK9S3p0aDdaT0UAVsKi2tVi6IWwNL9JvdqTdihaz79/l+u/rHMxmaJVMLkS2OoKKLWacdeE3IsSxctc2D5Qcl6vUlVVgNt+fkPPcFFmTw1xruvT7SCd7nuVhDQvECzJH90h0azRKoKFRkAmP5lKTWAGRdefoZL554FQNUxB92WvYeA5UN4PtSqwB2phKqsqMpBgAunRhFR3j49zuU3jnX8k6fHEQKXzh1jbmGDuYU6s4t1rt6socUeLLZHhYO2AHSHmzt19ihTZ48O8Hzl/AmunD/BjTvrvPfNX3hWsNpwJCvwYm+ngug4UilSCSq6k8YPtxDwfA+WRawIWFbgscDiULcCEaWqBFOlrLazurupOSHLqGnEKJAY8TwBEHumqUirAjNm52vEPPRV4p01XXMPAQhUBjcWm9QZwijwokgAeYHlHYA06KR1cT6ZvoV56pDUJQEjw0KeaMgj1hPEY4vz2A4eW0/e1qA7KtQdsxTYAG0H3iG4xyK1Y+xm7XmEPOJZDiENzLi2WZHngeOjj2Pe+sMg4GRYyLAsx7ME4FnsyTD9pr0PEc8zPGRAwKXBkYOPEd96cZRvf11g9MDe7e3R4Z4Q+vyEnn3P4t0XzK/W+ODN5/kPfRLewAJVEQ0AAAAASUVORK5CYII%3D" alt="" width="24" height="24" /></p>
<p><img style="border:medium none;position:absolute;z-index:2147483647;opacity:0.6;display:none;" src="image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAADsElEQVR4nK2VTW9VVRSGn33OPgWpYLARbKWhQlCHTogoSkjEkQwclEQcNJEwlfgD/AM6NBo1xjhx5LyJ0cYEDHGkJqhtBGKUpm3SFii3vb2956wPB/t+9raEgSs52fuus89613rftdcNH8/c9q9++oe/Vzb5P+3McyNcfm2CcPj9af9w6gwjTwzvethx3Bx3x8xwd1wNM8dMcTNUHTfFLPnX6nVmZpeIYwf3cWD/PhbrvlPkblAzVFurKS6GmmGqqComaS+qmBoTI0Ncu3mXuGvWnrJ+ZSxweDgnkHf8ndVTdbiT3M7cQp2Z31dRTecHAfqydp4ejhwazh6Zezfnu98E1WIQwB3crEuJ2Y45PBTAQUVR9X4At66AppoEVO1Q8sgAOKJJjw6Am6OquDmvHskZ3R87gW+vlHz98zpmiqphkkRVbQtsfPTOC30lJKFbFTgp83bWh7Zx/uX1B6w3hI3NkkZTqEpBRDBRzG2AQHcwcYwEkOGkTERREbLQ/8HxJwuW7zdYrzfZ2iopy4qqEspKaDYravVm33k1R91Q69FA1VBRzFIVvXbx5AgXT44A8MWP81yfu0utIR2aVK3vfCnGrcUNxp8a7gKYKiLCvY2SUvo/aNtnM3e49ucK9S3p0aDdaT0UAVsKi2tVi6IWwNL9JvdqTdihaz79/l+u/rHMxmaJVMLkS2OoKKLWacdeE3IsSxctc2D5Qcl6vUlVVgNt+fkPPcFFmTw1xruvT7SCd7nuVhDQvECzJH90h0azRKoKFRkAmP5lKTWAGRdefoZL554FQNUxB92WvYeA5UN4PtSqwB2phKqsqMpBgAunRhFR3j49zuU3jnX8k6fHEQKXzh1jbmGDuYU6s4t1rt6socUeLLZHhYO2AHSHmzt19ihTZ48O8Hzl/AmunD/BjTvrvPfNX3hWsNpwJCvwYm+ngug4UilSCSq6k8YPtxDwfA+WRawIWFbgscDiULcCEaWqBFOlrLazurupOSHLqGnEKJAY8TwBEHumqUirAjNm52vEPPRV4p01XXMPAQhUBjcWm9QZwijwokgAeYHlHYA06KR1cT6ZvoV56pDUJQEjw0KeaMgj1hPEY4vz2A4eW0/e1qA7KtQdsxTYAG0H3iG4xyK1Y+xm7XmEPOJZDiENzLi2WZHngeOjj2Pe+sMg4GRYyLAsx7ME4FnsyTD9pr0PEc8zPGRAwKXBkYOPEd96cZRvf11g9MDe7e3R4Z4Q+vyEnn3P4t0XzK/W+ODN5/kPfRLewAJVEQ0AAAAASUVORK5CYII%3D" alt="" width="24" height="24" /></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Zend Framework vs CakePHP]]></title>
<link>http://aousmer.wordpress.com/2009/11/13/zend-framework-vs-cakephp/</link>
<pubDate>Fri, 13 Nov 2009 19:01:18 +0000</pubDate>
<dc:creator>Abdellah Ousmer</dc:creator>
<guid>http://aousmer.wordpress.com/2009/11/13/zend-framework-vs-cakephp/</guid>
<description><![CDATA[Durant mon passage en tant que développeur dans une agence multimedia dans le cadre de mon stage de ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p style="text-align:center;"><img class="size-full wp-image-46 alignnone" title="cakzendphp1" src="http://aousmer.wordpress.com/files/2009/11/cakzendphp1.jpg" alt="cakzendphp1" width="108" height="99" /> <img class="size-full wp-image-44 alignnone" title="cakphp" src="http://aousmer.wordpress.com/files/2009/11/cakphp.jpg" alt="cakphp" width="108" height="99" /></p>
<p>Durant mon <img src="/Users/bello/Pictures/cakzendphp.jpg" alt="" />passage en tant que développeur dans une agence multimedia d<img src="/Users/bello/AppData/Local/Temp/moz-screenshot-1.jpg" alt="" />ans le cadre de mon stage de fin d&#8217;étude, j&#8217;ai pu acquérir des connaissances et surtout j&#8217;ai pu apprendre à utiliser un nouvel outil(Et oui!! nouveau pour moi^^) le <a href="http://framework.zend.com/" target="_blank">Zend framework</a> mais y a aussi CakePHP qui utilise encore PHP 4. bon j&#8217;aime pas trop parler, je vous laisse voir ce comparatif qui est très instructif. Bonne lecture;))<a title="ZendvsCake" href="http://g-rossolini.developpez.com/comparatifs/php/cake-zf/" target="_self"><strong><span style="color:#339966;"><em>&#62;</em></span><span style="color:#339966;"><em>COMPARATIF</em></span></strong></a></p>
<p><img src="/Users/bello/AppData/Local/Temp/moz-screenshot-3.jpg" alt="" /></p>
<div id="_mcePaste" style="overflow:hidden;position:absolute;left:-10000px;top:0;width:1px;height:1px;"><img src="/Users/bello/Pictures/cakzendphp.jpg" alt="" /></div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Интервью с компанией Varien (Magento) на Developers.org.ua]]></title>
<link>http://qasmoke.wordpress.com/2009/11/12/interview-with-varien-magento-from-developers/</link>
<pubDate>Thu, 12 Nov 2009 12:52:55 +0000</pubDate>
<dc:creator>ArtemiS</dc:creator>
<guid>http://qasmoke.wordpress.com/2009/11/12/interview-with-varien-magento-from-developers/</guid>
<description><![CDATA[Статья &#8220;весело&#8221; прижилась &#8230; За сутки существования её обкомментировали ой-ой-ой ка]]></description>
<content:encoded><![CDATA[Статья &#8220;весело&#8221; прижилась &#8230; За сутки существования её обкомментировали ой-ой-ой ка]]></content:encoded>
</item>
<item>
<title><![CDATA[First things first]]></title>
<link>http://zfguru.wordpress.com/2009/11/03/first-things-first/</link>
<pubDate>Tue, 03 Nov 2009 19:07:32 +0000</pubDate>
<dc:creator>zfguru</dc:creator>
<guid>http://zfguru.wordpress.com/2009/11/03/first-things-first/</guid>
<description><![CDATA[First things first; I&#8217;m not a Zend Framework guru at all! One could rather describe me as PHP ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>First things first; I&#8217;m not a Zend Framework guru at all! One could rather describe me as PHP enthusiast who is working REALLY hard to learn ZF together with its hard-to-understand MVC philosophy.</p>
<p>I have already installed ZF on different platforms, beginning from my HP laptop based on a dual-core AMD processor, up to a shared host at Media Temple. This is just the start of a adventure&#8230;</p>
<p>Stay tuned, I&#8217;ll be back very soon.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Instaling Zend Studion on Ubuntu 64]]></title>
<link>http://mcloide.wordpress.com/2009/11/03/instaling-zend-studion-on-ubuntu-64/</link>
<pubDate>Tue, 03 Nov 2009 13:02:31 +0000</pubDate>
<dc:creator>mcloide</dc:creator>
<guid>http://mcloide.wordpress.com/2009/11/03/instaling-zend-studion-on-ubuntu-64/</guid>
<description><![CDATA[Julian just came with a detailed tutorial of how to install Zend Studion on the 64 edition of Ubuntu]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Julian just came with a detailed tutorial of how to install Zend Studion on the 64 edition of Ubuntu.</p>
<p>It has both solutions, installing the normal version and the 64 version of Zend Studio.</p>
<p>Check it out: <a href="http://www.smooka.com/blog/2009/11/02/installing-zend-studio-on-ubuntu-64-bit/" target="_blank">http://www.smooka.com/blog/2009/11/02/installing-zend-studio-on-ubuntu-64-bit/</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[3 certificados Zend sobre 5 a nivel nacional trabajarán en Dokeos Latino]]></title>
<link>http://dokeoslatinoamerica.wordpress.com/2009/11/02/3-certificados-zend-sobre-5-a-nivel-nacional-trabajaran-en-dokeos-latino/</link>
<pubDate>Tue, 03 Nov 2009 01:39:39 +0000</pubDate>
<dc:creator>ywarnier</dc:creator>
<guid>http://dokeoslatinoamerica.wordpress.com/2009/11/02/3-certificados-zend-sobre-5-a-nivel-nacional-trabajaran-en-dokeos-latino/</guid>
<description><![CDATA[Acabo de confirmar que 3 desarrolladores, ingenieros PHP certificados por Zend, trabajarán en Dokeos]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="size-full wp-image-1180 alignright" title="php5_zce_logo_new" src="http://dokeoslatinoamerica.wordpress.com/files/2009/11/php5_zce_logo_new.gif" alt="php5_zce_logo_new" width="73" height="68" />Acabo de confirmar que 3 desarrolladores, ingenieros PHP certificados por Zend, trabajarán en Dokeos a partir de la próxima semana, para mejorar la calidad de nuestros <a href="http://www.dokeoslatino.com/servicios">servicios sobre dokeos</a>. Es para mi un placer y un honor de tener un conjunto de mentes tan brillantes reunidas en una sola empresa. Solo existen 5 ingenieros Zend en Perú.</p>
<p>Sin aprovechar para descansar, estaremos preparando, este mes, el programa de curso para preparación a la certificación Zend, para el cual Gary Rojas, el cuarto y último certificado en PHP5, ha acceptado desde ya de combinar esfuerzos con nosotros.</p>
<p>Con este cuadret fantástico, estaremos brindandoles el mejor curso &#8220;all times&#8221; de PHP que pudió ser organizado a fines de prepararles en la certificación de Zend aquí en Lima.</p>
<p>Más sobre esto más tarde&#8230; Si están interesados, por favor dejen nos un comentario.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Getting Started with ZF(Zend Farework)]]></title>
<link>http://aminbd.wordpress.com/2009/10/30/getting-started-with-zfzend-farework/</link>
<pubDate>Fri, 30 Oct 2009 17:03:26 +0000</pubDate>
<dc:creator>aminbd</dc:creator>
<guid>http://aminbd.wordpress.com/2009/10/30/getting-started-with-zfzend-farework/</guid>
<description><![CDATA[Hi Friends, To day i brief you about ZF. So now we start What is ZF Zend Framework is a simple, stra]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Hi Friends,<br />
To day i brief you about ZF. So now we start</p>
<p><span style="font-size:medium;">What is ZF<br />
</span>Zend Framework is a simple, straightforward, open-source software framework for PHP 5 designed to eliminate the tedious details of coding and let you focus on the big picture. Its strength is in its highly-modular <a href="http://en.wikipedia.org/wiki/Model-view-controller">MVC</a> design, making your code more reusable and easier to maintain. Develop by Zend (the PHP company).</p>
<p><span style="font-size:medium;"><!--more-->Features of ZF</span><br />
Zend Framework features include:</p>
<ul>
<li>All components are fully object-oriented PHP 5 and are E_STRICT compliant</li>
<li>Use-at-will architecture with loosely coupled components and minimal interdependencies</li>
<li>Extensible MVC implementation supporting layouts and PHP-based templates by default</li>
<li>Support for multiple database systems and vendors, including <a title="MySQL" href="http://en.wikipedia.org/wiki/MySQL">MySQL</a>, <a title="Oracle Database" href="http://en.wikipedia.org/wiki/Oracle_Database">Oracle</a>, <a title="IBM DB2" href="http://en.wikipedia.org/wiki/IBM_DB2">IBM DB2</a>, <a title="Microsoft SQL Server" href="http://en.wikipedia.org/wiki/Microsoft_SQL_Server">Microsoft SQL Server</a>, <a title="PostgreSQL" href="http://en.wikipedia.org/wiki/PostgreSQL">PostgreSQL</a>, <a title="SQLite" href="http://en.wikipedia.org/wiki/SQLite">SQLite</a>, and <a title="Informix Dynamic Server" href="http://en.wikipedia.org/wiki/Informix_Dynamic_Server">Informix Dynamic Server</a></li>
<li>Email composition and delivery, retrieval via <a title="Mbox" href="http://en.wikipedia.org/wiki/Mbox">mbox</a>, <a title="Maildir" href="http://en.wikipedia.org/wiki/Maildir">Maildir</a>, <a title="POP3" href="http://en.wikipedia.org/wiki/POP3">POP3</a> and <a title="IMAP4" href="http://en.wikipedia.org/wiki/IMAP4">IMAP4</a></li>
<li>Flexible caching sub-system with support for many types of backends, such as <a title="Random Access Memory" href="http://en.wikipedia.org/wiki/Random_Access_Memory">memory</a> or a <a title="File system" href="http://en.wikipedia.org/wiki/File_system">file system</a>.</li>
</ul>
<p>References<br />
#<a href="http://www.zendframework.com/about/overview">http://www.zendframework.com/about/overview</a><br />
#<a href="http://www.google.com.bd/url?ei=wxjrSoSWG96rjAe-pdGfDQ&#38;sig2=4pGaiBv-HI5MDETZWflX_w&#38;q=http://en.wikipedia.org/wiki/Zend_Framework&#38;ei=wxjrSoSWG96rjAe-pdGfDQ&#38;sa=X&#38;oi=define&#38;ct=&#38;cd=1&#38;ved=0CA0QpAMoAA&#38;usg=AFQjCNF3Gwy2ge3j6F2zQrP3a6_LHbCoIg">en.wikipedia.org/wiki/Zend_Framework</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Render PDF di Yii Menggunakan Zend]]></title>
<link>http://bambangpdp.wordpress.com/2009/10/30/render-pdf-di-yii-menggunakan-zend/</link>
<pubDate>Fri, 30 Oct 2009 11:49:36 +0000</pubDate>
<dc:creator>bpdp</dc:creator>
<guid>http://bambangpdp.wordpress.com/2009/10/30/render-pdf-di-yii-menggunakan-zend/</guid>
<description><![CDATA[Pengantar Yii adalah salah satu framework di PHP yang extensible. Tulisan ini akan membahas salah sa]]></description>
<content:encoded><![CDATA[Pengantar Yii adalah salah satu framework di PHP yang extensible. Tulisan ini akan membahas salah sa]]></content:encoded>
</item>
<item>
<title><![CDATA[Input validation and error messages using Zend Form]]></title>
<link>http://pascaldevink.wordpress.com/2009/10/29/input-validation-and-error-messages-using-zend-form/</link>
<pubDate>Wed, 28 Oct 2009 23:02:57 +0000</pubDate>
<dc:creator>pascaldevink</dc:creator>
<guid>http://pascaldevink.wordpress.com/2009/10/29/input-validation-and-error-messages-using-zend-form/</guid>
<description><![CDATA[One thing I like about Zend, is the option to let it build your forms for you. You can mix and match]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>One thing I like about Zend, is the option to let it build your forms for you. You can mix and match form elements just as you would with regular objects and in the end, let Zend build the form for you. You can use regular textboxes, radio buttons, submit buttons, etc and even the occasional date picker is not a problem if you are using Zend X.</p>
<p>One thing that was giving me some problems though, was displaying error messages. It is always nice to give good feedback to your users with a nice, meaningful message about what was wrong with the input they provided.<br />
<!--more--><br />
To accomplish this, I build the form, consisting of a first name, infix, last name and email address.<br />
Before reading on, I must mention that wordpress screwed up my code formatting, but your IDE should be able to make something good out of it.</p>
<p><code><br />
$this-&#62;setAction($this-&#62;_actionUrl)<br />
-&#62;setMethod('post')<br />
-&#62;setAttrib('id', 'signupform')<br />
<br />
$this-&#62;addElement('text', 'firstname', array('label' =&#62; 'First name'));<br />
$username = $this-&#62;getElement('firstname')<br />
-&#62;addValidator('alnum')<br />
-&#62;setRequired(true)<br />
<br />
$this-&#62;addElement('text', 'infix', array('label' =&#62; 'Infix'));<br />
$username = $this-&#62;getElement('infix')<br />
-&#62;addValidator('alnum')<br />
-&#62;setRequired(false)<br />
<br />
$this-&#62;addElement('text', 'lastname', array('label' =&#62; 'Last name'));<br />
$username = $this-&#62;getElement('lastname')<br />
-&#62;addValidator('alnum')<br />
-&#62;setRequired(true)<br />
<br />
$this-&#62;addElement('text', 'email', array('label' =&#62; 'Email address'));<br />
$email = $this-&#62;getElement('email')<br />
-&#62;addValidator('EmailAddress')<br />
-&#62;setRequired(true)<br />
<br />
$submit = $this-&#62;addElement('submit', 'Signup');<br />
</code></p>
<p>I can now stick this into my views using:<br />
Controller:<br />
<code>$form = new SignupForm('/user/signup');<br />
$this-&#62;view-&#62;form = $form;</code><br />
View:<br />
<code>&#60;?php echo $form; ?&#62;</code><br />
Refreshing the page should now give you a simple form with a submit button. This form does nothing now though, and we could use some interaction at the end:<br />
<code>public function signupAction() {<br />
  $form = new SignupForm('/user/signup');<br />
  if ($this-&#62;_request-&#62;isPost()) {<br />
    if ($form-&#62;isValid($this-&#62;getRequest()-&#62;getPost())) {<br />
      echo "Congratulations, your form validated";<br />
    }<br />
  }<br />
}</code><br />
As you can see here, we are actively checking if the form was indeed valid. Remember the validators we added to the form? The Zend Form is smart enough to iterate over the elements with values from the POST and decide whether or not the input is valid. It doesn&#8217;t stop there though, it continues iterating until the end, all the while collecting error messages from the validated input.<br />
Before displaying what was wrong with the user&#8217;s input, we must first add these messages somewhere. We add them to the form, as that is where they belong:<br />
<code>$this-&#62;addElement('text', 'firstname', array('label' =&#62; 'First name'));<br />
$username = $this-&#62;getElement('firstname')<br />
-&#62;addValidator('alnum')<br />
-&#62;setRequired(true)<br />
-&#62;addErrorMessage("Something was wrong with your first name");<br />
<br />
$this-&#62;addElement('text', 'lastname', array('label' =&#62; 'Last name'));<br />
$username = $this-&#62;getElement('lastname')<br />
-&#62;addValidator('alnum')<br />
-&#62;setRequired(true)<br />
-&#62;addErrorMessage("Something was wrong with your lastname");<br />
<br />
$this-&#62;addElement('text', 'email', array('label' =&#62; 'Email address'));<br />
$email = $this-&#62;getElement('email')<br />
-&#62;addValidator('EmailAddress')<br />
-&#62;setRequired(true)<br />
-&#62;addErrorMessage("Something was wrong with your email");</code></p>
<p>These messages could be nicer and could even be retrieved from a language table if you want. You could also add messages that are returned depending on what kind of validation went wrong.<br />
For now, let&#8217;s leave it this way and display the messages to our user:<br />
<code>if ($form-&#62;isValid($this-&#62;getRequest()-&#62;getPost())) {<br />
// Your validated form code<br />
else {<br />
$messages = $form-&#62;getErrors();<br />
$this-&#62;view-&#62;formResponse = $messages;<br />
}</code><br />
This was what stomped me a little in the beginning. The form has a method called getErrorMessages() and since we added the messages to our form elements using addErrorMessage(), it seemed only logical to retrieve these with aforementioned method. For reasons unknown to me, the Zend team decided it was best to use getErrors().</p>
<p>Feel free to make this prettier and perhaps trow in some AJAX to make this more dynamic.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[PHP on Windows Contest]]></title>
<link>http://cdspartners.wordpress.com/2009/10/26/php-on-windows-contest/</link>
<pubDate>Mon, 26 Oct 2009 16:34:46 +0000</pubDate>
<dc:creator>wesy</dc:creator>
<guid>http://cdspartners.wordpress.com/2009/10/26/php-on-windows-contest/</guid>
<description><![CDATA[In partnership with Marco Tabini and Associates (MTA) (php|architect; CodeWorks; php|tek), we are ex]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>In partnership with Marco Tabini and Associates (MTA) (<a href="http://phparch.com/">php&#124;architect</a>; <a href="http://cw.mtacon.com/">CodeWorks</a>; <a href="http://tek.mtacon.com/">php&#124;tek</a>), we are excited to announce the launch of <a href="http://phparch.com/win">The Great PHP on Windows</a> contest. Do you have what it takes to win? Of course you do <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p><a href="http://cdspartners.files.wordpress.com/2009/10/clip_image002.gif"><img style="display:inline;margin-left:0;margin-right:0;border-width:0;" title="clip_image002" src="http://cdspartners.files.wordpress.com/2009/10/clip_image002_thumb.gif?w=144&#038;h=96" border="0" alt="clip_image002" width="144" height="96" align="left" /></a>You are encouraged to leverage existing open-source libraries and applications, including blogs engines, forums, photo galleries and other platform/components as part of your submission.</p>
<p>For complete details visit <a href="http://phparch.com/win">http://phparch.com/win</a></p>
<p> </p>
<p>The Quick Summary:</p>
<ul>
<li>Write a new application designed to run in PHP on Windows using IIS—or make a significant contribution to an existing open-source project along the same lines</li>
<li>The best application, selected jointly by a panel of experts and by our readers, will win a <a href="http://phparch.com/win/prizes">grand prize</a><br />
which includes a 52&#8243; Digital HD home entertainment system, as well as an all-expenses paid trip to php&#124;tek 2010 in Chicago. Runner-up prizes include 2 XBox 360 Ultimate and subscriptions to php&#124;architect.</li>
<li>Not familiar with Windows? No worries—we have partnered with <a href="http://www.appliedi.net/">Applied Innovations</a> to give you <strong>absolutely free hosting</strong> on a pre-configured virtual machine for the duration of the contest.</li>
<li><strong>Registration and submissions for the contest will be accepted October 19<sup>th</sup>, 2009 through February 28<sup>th</sup>, 2010</strong> and with judging and public voting will occur March 1<sup>st</sup> – 31<sup>st</sup>.</li>
<li>For the duration of the contest, Applied Innovations will provide free web hosting to <strong>all</strong> participants (shared) and a free VM to the first 60 participants who register.</li>
<li>Contest is open to all U.S. residents excluding MTA, Applied Innovations, and Microsoft employees and affiliated individuals. (MTA is the official sponsor with AppliedI and Microsoft as promotion entities.)</li>
</ul>
<p>The contest is open to residents of the United States only—but you can still win by voting, no matter where you are.</p>
<p> Good Luck!</p>
<p><a href="http://cdspartners.files.wordpress.com/2009/10/clip_image002.gif"></a></p>
<p><a href="http://cdspartners.files.wordpress.com/2009/10/clip_image0021.gif"></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Agile Cat の Twitter 大作戦]]></title>
<link>http://agilecat.wordpress.com/2009/10/26/agile-cat-%e3%81%ae-twitter-%e5%a4%a7%e4%bd%9c%e6%88%a6/</link>
<pubDate>Mon, 26 Oct 2009 13:50:33 +0000</pubDate>
<dc:creator>Agile Cat</dc:creator>
<guid>http://agilecat.wordpress.com/2009/10/26/agile-cat-%e3%81%ae-twitter-%e5%a4%a7%e4%bd%9c%e6%88%a6/</guid>
<description><![CDATA[・・・な～んちゃって、たいしたこと無いんですが。。。 Blog という受動的なものに、Twitter という能動的なものを加えると、いったいどうなるのか？ ・・・ という感じで 8月ころから使い始めて]]></description>
<content:encoded><![CDATA[・・・な～んちゃって、たいしたこと無いんですが。。。 Blog という受動的なものに、Twitter という能動的なものを加えると、いったいどうなるのか？ ・・・ という感じで 8月ころから使い始めて]]></content:encoded>
</item>

</channel>
</rss>
