Zend Framework available for download!

Zend Framework is a high quality and open source framework for developing Web Applications and Web Services.

Built in the true PHP spirit, the Zend Framework delivers ease-of-use and powerful functionality. It provides solutions for building modern, robust, and secure websites.

http://framework.zend.com/

My-BIC – A PHP AJAX “State of Mind”

“State of Mind” as opposed to a “framework”

Jim Plush, the guy behind My-BIC, has come up with some intuitive sample code and tutorials for harnessing the power of AJAX with PHP.

From the Readme:
My-Bic is a very simple concept, we keep javascript and PHP seperate instead of trying to mash them together. This concept allows you to use the client side framework with whatever backend language you choose.

See the My-BIC page for more info:
http://www.litfuel.net/mybic/

Singleton and Factory Design Patterns in PHP

[url=http://www.devshed.com/cp/bio/Alejandro-Gervasio/]Alejandro Gervasio[/url] at [url=http://www.devshed.com/]Dev Shed[/url] gives a nice introduction to using the singleton and factory design patterns in PHP to build forms. This 5 part series takes the reader from an introduction to PHP classes and design patterns to creating a form using a form generator class and singleton and factory design patterns.

The five parts of the series:
1. [url=http://www.devshed.com/c/a/PHP/The-Singleton-and-Factory-Patterns-in-PHP-Building-objectoriented-forms/]Building object-oriented forms[/url]
2. [url=http://www.devshed.com/c/a/PHP/The-Singleton-and-Factory-Patterns-in-PHP-designing-an-object-factory/]Designing an object factory[/url]
3. [url=http://www.devshed.com/c/a/PHP/The-Singleton-and-Factory-Patterns-in-PHP-a-rendering-capable-factory-class/]A rendering-capable factory class[/url]
4. [url=http://www.devshed.com/c/a/PHP/The-Singleton-and-Factory-Patterns-in-PHP-Working-With-Singletons/]Working with Singletons[/url]
5. [url=http://www.devshed.com/c/a/PHP/The-Singleton-and-Factory-Patterns-in-PHP-Building-a-Form-Generator-Class/]Building a form generator class[/url]

Aspect Oriented Programming in PHP

From the “Just because you can” department:

Who says you need to be a java-head to play with the cool stuff? Some of you may have heard of an “extension” to Object Oriented design called Aspect Oriented Programming. ([i]I seem to recall something about it in the classic text “The Pragmatic Programmer.”[/i])

Well, it was only a matter of time, but someone built a framework for it in PHP:
http://freshmeat.net/projects/aophp/

[quote]This package can be used to implement aspect oriented programming (AOP) by executing the code of classes that enable orthogonal aspects at run- time. The intention is to provide a means to implement orthogonal aspects in separate classes that may be an interesting add to the application, like logging, caching, transaction control, etc., without affecting the main business logic. The package provides base classes for implementing defining point cuts where the code of an advice class is called to implement actions of the orthogonal aspects that an application may need to enable.[/quote]

I only have some idea what he just said, but I’m sure that plenty of you will find this very cool! You go Dmitry!

Zend Collaboration Project

There are times when you go to conferences, and you have a great time. Then there are those other times when you decide “Hmmm…maybe next year” then kick your self when something really big is announced.

While I was lucky enough to see the announcement of OpenOffice at OSCON a few years back, this week I missed what may one day become the NextBigThing for the PHP Community from Zend.

If you haven’t yet heard of the [url=http://www.zend.com/collaboration/]PHP Collaboration Project[/url], you may want to go check out Zend’s website for it. From their FAQ:
[quote]The PHP Collaboration Project is an open source initiative through which the PHP community and partners will create an industrial-grade PHP Web application development and deployment environment.[/quote]

Sure, at the moment it is just an announcement. However, if anyone is going to be able to muster the open source [i]and[/i] big-business backing to actually pull off a decent/universal programming platform for PHP it would be Zend.

Good luck guys!

JavaScript & PHP on a friendly basis with AutoComplete

I recently put together a third example for the SAJAX project (http://www.modernmethod.com/sajax/); this one uses the concept behind Google Suggest, which is to populate an HTML input box with an array coming from the server.

Very useful if you have lots of input boxes on a page, each which you want to have a different set of autocomplete data.

The code could be extended to work just like Google Suggest; the hard part was figuring out how to get the array passed back intact. I tested it with >5000 items in the array, and it worked seamlessly.

The code is at:

http://www.hatwhite.com/sajax/

New Security Consortium

If you are interested in security, you may want to check out the new [url=http://phpsec.org/]PHP Security Consortium[/url]. They [url=http://phpsec.org/about/news/31jan2005.html]describe the group[/url] on their site:
[quote] An international group of PHP experts today announced the official launch of the PHP Security Consortium (PHPSC), a group whose mission is to promote secure programming practices within the PHP community through education and exposition while maintaining high ethical standards.[/quote]

They only have [url=http://phpsec.org/articles/]one article[/url] so far, but I’m hoping that will change soon. Anyone know who all is in this besides “an International group of PHP Experts”? I see Chris Shiflett and Andi….but can’t seem to find a members list.

Ah, well…here’s hoping!

Zend’s PHP 101: Bugging Out

An article was posted out on Zend.com yesterday discussing the full range of error handling options that PHP provides. I bring it up because it is just so perfectly related to [url=http://www.kcpug.org/site/modules/news/article.php?storyid=7]January’s Meeting[/url]. In January, we discussed PHP 5’s new try/catch/exception logic; and only talked about the rest as the “old way.” Of course, the truth is…even in PHP 5 most everything you work with still uses the other (IMHO) “lesser” concepts.

If you are like me, and most of your development is still in PHP 4; or, if you are interested in the other error handing options that PHP provides, be sure to read [url=http://www.zend.com/php5/abs/php101-12.php]Bugging Out[/url].

Here’s to Please, Love and error-free PHP!