The PHP development team would like to announce the 8th release candidate of PHP 5.4. PHP 5.4 includes new language features and removes several legacy (deprecated) behaviours. Windows binaries can be downloaded from the Windows QA site. THIS IS A RELEASE CANDIDATE - DO NOT USE IT IN PRODUCTION! . This is the 8th release candidate. The release candidate phase is intended as a period of bug fixing prior to the stable release. No new features should be included before the final version of PHP 5.4.0. The...
With the first stable release of PHP 5.4 not too far off, it's important to understand the new features it offers and how to use them effectively. In this new post to DZone.com Giorgio Sironi shows how to "write clean code" with these new features, including a few snippets of code to illustrate.After seven release candidates, it's clear PHP 5.4 is coming: as always the improvements from the previous minor version are many. [...] Let's look at the new features and score them on two metrics: usefulness,...
PHPMaster.com has a new tutorial looking at another popular design pattern, the Observer pattern, and sharing some example code putting it to use. (Their other design pattern articles include ones on command and factory patterns).In this article I'll show you how to implement the Observer Pattern. You'll learn how various classes in the pattern relate to one another as subject and observers, how the subject notifies observers of a change in its state, and how to identify scenarios where it would be...
Cal Evans has posted a great tongue-in-cheek post to his blog today giving reasons why you shouldn't hire PHP community members to work at your company.It is no secret that I spend a lot of time promoting the PHP Community. It is a vibrant, helpful and friendly community and I've said before that I believe it to be one of the most important asserts of the PHP language. I'm also a realist though; I've built teams and I've hired developers. [...] I have experience in this area and I have strong opinions. I...
In a quick new post to his blog, Rob Allen shows how you can override a module's configuration in a Zend Framework 2 application. In his example, he uses the "User" module and overrides two of the "magic paths" it creates.Let's say that you install the ZF-Common's User module. By default, it sets up its routes under the /user path segment. [...] This config section will create the routes /user and through the magic of child_routes, also create /user/login and other required routes. If you don't want...
In this new post to his blog Chris Hartjes offers up a few of his own thoughts about testing APIs and some of the issues/concerns he's come across in his own testing (via Behat).I have been asked a few times on Twitter for some advice on how to use testing tools in order to test APIs. It just so happens that I am writing a bunch of tests for an API at work so perhaps this is a very timely blog post. [...] When you are testing an API you main concern is your ability to reproduce the results of a specific...
Here's what was popular in the PHP community one year ago today:Till Klampaeckel's Blog: Contributing to PEAR: Taking over packages
Michelangelo van Dam's Blog: Book review: CMS Design Using PHP and JQuery
DZone.com: Video: PHP 5.3.1, MongoDB and Lithium on Windows 7 / IIS 7
Mayflower Blog: Creating coding standards for PHP_CodeSniffer
php|architect: Creating RRD graphs in PHP
NetTuts.com: Create your First Tiny MVC Boilerplate with PHP
PHPBuilder.com: Using the Factory Pattern in PHP Applications...
In this quick post to his blog Mattias Geniar looks at three different Apache flags you can use in your configuration/.htaccess files to set various things in your PHP environment.Back in 2009 there was a bug in the php_admin_value implementation before PHP 5.2.6. Since then, everything should run smoothly again. However, I find there's still a lot of confusion on when to use php_value, php_admin_value, php_flag and php_admin_flag. So I'll see if we can clear some of that.He compares the three php_*...
On the NetTuts.com site today there's a quick tutorial comparing two of the main database access methods available to PHP developers - PDO and MySQLi - based on performance and features they each have.When accessing a database in PHP, we have two choices: MySQLi and PDO. So what should you know before choosing one? The differences, database support, stability, and performance concerns will be outlined in this article.The article starts with a summary of what each of the tools offers as far as features,...
In this new article on DZone.com, Artur Mkrtchyan shows you how to get an Amazon EC2 instance up and running and get a LAMP server set up and ready to go.In this article I'm going to show you how to create a free Amazon EC2 cloud based LAMP Server and Point your domain to Amazon EC2 Instance. There are 4 simple steps to do.The setup process is pretty easy - getting an Amazon free account, creating a server from an existing image, installing the LAMP stack and pointing your domain at the EC2 instance. He...
Dave Marshall is in the process of building a "RESTish" web service and has shared some of his planning steps in a new post to his blog.This post is going to describe how I've ending up designing, what I consider to be a fairly RESTful web API. I'm far from being an expert, and this is definitely the closest thing to a RESTful API that I've ever created, so I'm not even experienced with REST APIs. [...] Until about 6 months ago, I'd always been sceptical of creating RESTful APIs, but I think I've had a...
The Dutch PHP Conference has officially announced their schedule for this year's event and the opening of the registration (Early Bird pricing ending April 1st).We are happy to announce that we have just published the schedule and registration is now open. Quickly, go and check out all the great content we have to offer this year! Once you've decided that you want to join us, you can go to the registration page to order your tickets. Please note that you will get a 15% early bird discount if you order...
Well, I've been a little lazy around here and haven't posted since the beginning of the year. I figured I'd fix that by posting an update about a few things going on around here.
First off, since the schedule was just released, I'll mention that I'll be presenting at this year's Dutch PHP Conference with three different sessions (well, kind of just two):
Simple Session (PDO / MySQL)
DB Schema Management
PDO Database Connection
Smooth Scroll CakePHP Plugin
User Agent Parser
Seth Davis has put together a github repository with some benchmarking for some of the most common web frameworks - both PHP and not. His statistic is "requests per second" in a few scenarios: a "hello world" string test, a test with a database connection and one with a templated response.It should also be noted that my goal here was not necessarily to figure out how fast each framework could perform at its most optimized configuration (although built-in caching and other performance tweaks were usually...
Marcelo Gornstein has posted a new article showing how to use SWIG and libpcap to sniff packets from the network directly from his PHP application.I've been wanting to try SWIG for a long time, but never got the chance, for one thing or the other. So this weekend I've finally decided to give it a try by trying to create a php extension that access a small C++ wrapper for libpcap, so I can sniff packets directly from PHP. Just for fun (and actually because I couldn't find any active pecl extension to use...
On PHPMaster.com today there's a new tutorial posted, the first part in a series, showing how to create SOAP web services with the help of the NuSOAP library.In this first of a two part series on web services I'll talk about the SOAP specification and what is involved in creating SOAP messages. I'll also demonstrate how to create a SOAP server and client using the excellent NuSOAP library to illustrate the flow of SOAP. In the second part I'll talk about the importance of WSDL files, how you can easily...
On the Voices of the ElePHPant podcast today Cal Evans has posted the latest interview with a member of the PHP community. This time it's Matthew Weier O'Phinney, lead on the Zend Framework project.Cal's "three questions" for Matthew were:
Since Zend Framework is the opposite of the ideals behind the Micro PHP Manifesto, what are your thoughts on it?
Zend Framework 2 is close but not done - should a new project go with v1 or v2?
What's your local user group and it's URL (hint: there's not one yet)
Latest PECL Releases:
On the Nelm.io blog today there's an update about Composer, the PHP package manager that's been steadily growing in popularity over the last few months.This weekend we have been busy hacking on Composer in our office together with Nils Adermann and Volker Dusch. We wanted to push the project forward a bit faster than the odd free evenings usually allow, and I would now like to introduce the changes we made.Their updates include mentions of:
Changes to the "dev" version handling
Major bugfixing in the...