News Feed
Jobs Feed
Sections

Recent Jobs

News Archive
feed this:

devReview.com:
The Big List of PHP Frameworks
January 07, 2009 @ 14:12:10

The devReview.com website has put together The Big List of as many of the PHP frameworks out there they could find:

For the start of a new year, it was time to clean out the list of PHP frameworks. A few have fallen by the wayside, but many new ones have been added. It seems that patterns and MVC is still all the rage, but less are professing to being Rails clones, though the inspiration of convention is still strong. There are a wide variety of framework types. From full stack (cakePHP, Symfony) to components (eZ), a bit of both (Zend) and minimalist (LightVC, TinyMVC, Pluf).

Requirements to be on the list include that the framework must be PHP-based, have a recent code release in the last 12 months, needs to be available in English and not including frameworks that can be considered content systems themselves.

As of the time of this post, there are around 50 active frameworks listed - everything from CakePHP and the Zend Framework out to eZ Components and Prado. Links for each include their project homepage and some reviews the site has done.

0 comments voice your opinion now!
list framework active project php4 php5 release english



Johannes Schluter's Blog:
Goto your Christmas presents with PHP 5.3
January 06, 2009 @ 10:20:56

Johannes Schluter recently looked at one of the new features coming with PHP 5.3 - the goto functionality:

Over the last few days I already mentioned a few hidden gems from PHP 5.3. Now at Christmas I wanted to take a look at some new language feature of the upcoming PHP version: Added "jump label" operator (limited "goto"). (Dmitry, Sara)

No, its not the sort of "goto" you're thinking of - its a bit more limited than that. Johannes mentions that it only allows you to jump within the same execution unit and you can't jump into loops. Used incorrectly, it can be bad but he points out two useful instances - one being a code generator and the other an instance where you might need to drop out of code but not kill off the script in the process (sample code is included for this second one).

1 comment voice your opinion now!
php5 goto new feature generate code error handle


Jordi Boggiano's Blog:
Multiton base class
December 30, 2008 @ 11:17:49

In this recent post Jordi Boggiano looks at a different sort of design pattern - a sort of extension of the Singleton pattern: Multition.

While I like the Singleton pattern every now and then, I prefer the flexibility that the Multiton potentially offers, and well it's just an extended version of the Singleton, so it's "compatible" with the Singleton model. Anyway, to the point, PHP5.3 is coming, and with Late Static Binding you can do a base Multiton (or Singleton if you insist), which wasn't possible before. Now I like this very much because you can simply extend it rather than rewriting those (few, I know, but still) lines each time.

Included in the post is an example of the design pattern showing how to create its structure in the class and use it to grab the same or unique instances (defined with an ID).

0 comments voice your opinion now!
multiton base class singleton php5 latestaticbinding lsb


Johannes Schluter's Blog:
Data structures in PHP 5.3
December 29, 2008 @ 11:19:28

Continuing on his his series looking at improvements in the upcoming PHP 5.3 release, Johannes Schluter uses this new post to look at some of the new data structures their update will have to offers in the Standard PHP Library.

In the programming world there are quite a few well understood and explored data structures. Which are commonly used in tons of applications, still the only things PHP offered till 5.3 in regards to structuring data were arrays (more precise: hash tables) and objects. So people had to either abuse them for other structures or implement the structures themselves on top of these. Thanks to Etienne things now are changing and PHP's Standard PHP Library (SPL) extension will offer quite a few standard implementations of data structures.

These new data structures are SplDoublyLinkedList, SplStack, SplQueue/SplPirorityQueue, SplHeap/SplMinHeap/SplMaxHeap and SplFixedArray. He explains a bit of what they are and more detail on one specifically - SplFixedArray.

0 comments voice your opinion now!
data structure php5 spl standard library doublylinked stack queue heap fixedarray


Johannes Schluter's Blog:
Improved getopt() in PHP 5.3
December 23, 2008 @ 15:02:14

Johannes Schluter has posted about another update to be included in PHP 5.3 - an improved getopt function:

So PHP 5.3 has lots of new stuff offer, so let's take a look at one change: Added long-option feature to getopt() and made getopt() available also on win32 systems by adding a common getopt implementation into core. (David Soria Parra, Jani)

This gives Windows users a function they haven't had before in both web-based applications and on the command line. You can get more information about the use of the function from its page in the manual.

0 comments voice your opinion now!
php5 improvement getopt function windows userland


Arpad Ray's Blog:
The adventure of PHP and the magic quotes
December 17, 2008 @ 12:03:07

One of the things that's been hanging around PHP's neck since its early days is the magic_quotes setting that was introduces to try to make things easier. In this interesting post Arpad Ray takes a look at this setting and why its a bad thing for PHP to have around.

Like register_globals, it helped lower the barrier of entry to building a dynamic website by removing some of the complexity. However it certainly wasn't without sacrifice, problems with the implementation quickly appeared and continued to abound for the next ten years. Finally in PHP 5.2.2 we got an implementation which (as far as its intentions went) seemed to be bug free, but of course by then it was turned off by default and was already slated to be dropped in PHP 6.

He looks at a few reasons they're bad (not good enough for escaping, inconsistent, performance issues) and some methods - code snippets - on how to deal with it being turned on on your server.

2 comments voice your opinion now!
adventure magic quotes bad php5 php6 code fix


Johannes Schluter's Blog:
A hidden gem in PHP 5.3 fileinfo
December 17, 2008 @ 09:35:59

Johannes Schluter has pointed out a "hidden gem" for PHP 5.3 in his latest blog post - the fileinfo extension.

This series is not meant to be complete but some personal choice, these blog postings are also no replacement for documentation, but just pointers. My goal is that you try out 5.3 right now so we can fix bugs as soon as possible before releasing it The NEWS file has a quite short entry for my first subject: Added fileinfo extension as replacement for mime_magic extension. (Derick)

He looks at one situation where the extension could come in very handy - getting the content type of the file for a download push - as well as why its better than the older mime_content_type function.

0 comments voice your opinion now!
php5 gem fileinfo mimecontenttype function extension hidden


Gopal Vijayaraghavan's Blog:
APC 3.1.2 Released!
December 17, 2008 @ 08:47:35

On his blog today Gopal Vijayaraghavan has posted about the release of the latest version of the APC sofware (Alternative PHP Cache) - version 3.1.2.

Finally, after nearly a year of work, it's into a release. Some new stuff has sneaked into it undocumented, that people might find interesting - apc.preload_path would be one of them. The backend memory allocation has been re-done - the api part by me and the internals by shire. There's a hell of a lot of new code in there, both rewritten and added. Tons of php4 cruft removed, php5 stuff optimized, made more stable, then less stable, made faster, then applied brakes. Made leak-proof, quake-proof and in general, idiot-proof. So, on & so forth.

To show the difference, he includes a diff of the current version against the previous - 68 files changed, 3255 insertions and 5545 deletions.

0 comments voice your opinion now!
apc cache release version memory allocation api internals php4 php5


Robert Basic's Blog:
Data filtering with PHP's Filter extension
December 16, 2008 @ 11:17:44

Robert Basic has a new blog post looking at the filtering extension included with most PHP5 distributions.

Filter extension? Maybe it's nothing new for some of you, but it is for me. I've never heard of it before. So I quickly hopped over to PHP.net and the Filter chapter of the manual.

The filter extension (included as of PHP 5.2) helps clean up and validate user input - really any input - like number matching, regular expressions and email addresses. He includes some examples of filtering strings, email and integers as well as ways to sanitize the same strings, ensuring they are valid and clean values.

1 comment voice your opinion now!
filter extension tutorial php5 validate sanitize


Scott MacVicar's Blog:
Accessing pseudo random data with PHP
December 15, 2008 @ 10:24:17

To help alleviate some recent complaints about the pseudo-random nature of the random functions in PHP, Scott MacVicar has proposed an alternate solution:

With all these potential different ways to get some pseudo random data it would be hard to do this in native PHP. Now we could do this in C and implement all the code ourselves but why risk implementing our own random functions and potentially making a mistake? The answer is OpenSSL, we already have an OpenSSL module and obviously they have some random functionality built in for when you go to generate SSL certificates.

You can make a call to the openssl_random_pseudo_bytes (in PHP 5.3) to grab the number of bytes you need and pass in a "strong" value to get a more cryptographically secure value.

0 comments voice your opinion now!
random string data openssl pseudo bytes php5



Community Events









Don't see your event here?
Let us know!


mysql cakephp releases zendframework book application PEAR example PHP5 conference security code framework database developer release job package ajax zend

All content copyright, 2009 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework