|All reviews||Core PHP Programming, Third Edition||Latest reviews||Best sellers ranking|
Core PHP Programming, Third Edition
August 8, 2003
Week: 4 All time: 137
manuellemos.netCore PHP programming is one of all time PHP best selling books. It was written by Leon Atkinson and its first edition was released in 1999.
On its third edition, Zeev Suraski, one of the most important PHP developers due to the co-creation of the Zend engine that powers PHP scripts execution, has joined
Leon to write an updated release of the book, now covering also PHP 5.
The structure and the style of the book are pretty much the same as in the previous editions. The most important new aspect of the book is its coverage of the new capabilities provided by PHP 5 now powered by Zend engine version 2.
At the time of this writing, PHP 5 is going through the beta stage, but the language new feature list is practically frozen. So, despite the final PHP 5 version was
not yet released, this book does not come too early. Therefore it is one of the first books to cover PHP 5.
The book follows a common structure of many chapters divided in 4 main parts: Programming with PHP, Functional Reference, Algorithms and Software engineering.
Since it would take a long review to detail what is each of the chapters, I am focusing on what is new in PHP 5 and probably more interesting: the new object model and exceptions. There are other new features in PHP 5 but these are probably those that will cause more impact.
The new object model was enhanced with several new features that were missing in PHP although they are very common now in modern object oriented languages like Java
and C# (.Net).
The book covers these new features in a chapter about classes and objects. It talks about type hints (specifying the type of class function parameters), class constructor and destructor functions (the later is new in PHP 5), explicit cloning objects (assigning no longer clones objects implicitly to make PHP faster), class member access restrictions (public, private and protected members), abstract classes and methods (to define class implementation templates), etc..
There are other features of the new object model that are not mentioned here because it is outside the scope of this review to mention all of them in detail. There is however one notice regarding the fact that the book still mentions the support to class name space definitions. This is a feature that was unfortunately removed from the final implementation of PHP 5 object model at the last hour. Zend developers determined it was not viable to implement them the way it was planned. However, the book still mentions name spaces as if they make part of the PHP 5 final version.
Exceptions support is another important new feature of PHP 5 . Exceptions are meant to help organizing execution error handling. Although exceptions are not exactly
about object oriented programming, the PHP 5 implementation is very similar to Java's. This means that you can encapsulate the processing of runtime errors in classes that you can now design to handle any errors the way it suits best your application needs, instead of using global error handling functions. The book describes briefly the usage of exceptions in the chapter about control statements.
This is an excellent follow-up of the previous Core PHP programming editions. The update on PHP 5 new features makes it worth purchasing this new edition even if you have already got any of the previous editions. If you did not knew the Core PHP programming books, this will certainly will be even more useful and pleasant book to read, especially if you are interested on the new PHP 5 features.
No comments were submitted yet.