Stuart Herbert has designed and implemented solutions for major companies such as Eurostar, Vodafone and HP, and he has been the lead maintainer of the Generic NQS project since 1994. A former systems manager with Orange UK, Stuart is currently one of the developers for Gentoo Linux, where he looks after Gentoo's installer for web-based packages.
Daniel Kushner is the director of training and certification at Zend Technologies. As director of training and certification, Daniel is responsible for the Zend PHP Certification program. In addition to designing the certification program, he developed the Zend PHP Training program, which provides the necessary study guide and classes to help PHP developers become Zend PHP certified.
George Schlossnagle is a principal at OmniTI Computer Consulting, a Maryland-based tech company specializing in high-volume web and email systems. Before joining OmniTI, George lead technical operations at several high-profile community websites, where he developed experience managing PHP in very large enterprise environments. George is a frequent contributor to the PHP community.
Chris Shiflett is a frequent contributor to the PHP community and one of the leading security experts in the field. His solutions to security problems are often used as points of reference, and these solutions are showcased in his talks at conferences such as ApacheCon and the O'Reilly Open Source Convention and his articles in publications such as PHP Magazine and phparchitect.
Björn Schotte is a German PHP veteran. He co-founded the first German-speaking portal for PHP topics in early 1999, co-organized the first worldwide PHP conference, and has been editor-in-chief of PHP Magazin since 2001. He also co-founded ThinkPHP, Germany's No. 1 PHP solution company dealing mainly with large PHP applications for clients such as HypoVereinsbank, Sixt, Lycos Europe, E.ON, Cap Gemini, Ernst & Young, and others. His company now consists of a team of more than 15 people, including PHP core developers.
Marco Tabini is the publisher of phparchitect, the premier magazine for PHP professionals, and has worked on websites for clients ranging from small startup operations to the Fortune 500s. Despite having been an IT industry professional for the last fifteen years, he still manages to maintain a reasonable level of sanityat least most of the time. Marco is also a subject matter expert for the Zend PHP Certification Exam.
If you're reading this book, you've probably made a decision that becoming a Zend Certified Engineer is an important step in your career. And, indeed, it might well bethe certification exam will test your knowledge of PHP in many areas, ranging from the basics to the more complex topics. As PHP's adoption grows inside the enterprise, being certified can mean that you will have an edge when that dream job comes along!
The exam was designed by a number of well-known people in the PHP community in collaboration with experts in the field of computer-assisted testing. They approached it with a simple set of goals:
Test the level of PHP knowledge of the candidate without prejudice to other technologies
Use a set of testing questions that reflect real-world scenarios as accurately as possible
Avoid questions that rely on a person's understanding of the language rather than his or her understanding of PHP and its related programming techniques
It's very important to understand these points as you approach your studies, as well as the exam itself, in particular when it comes to testing technologies that are used in conjunction with PHP. The test authors decided that, rather than relying on assumptions as to what other technologies a PHP programmer is likely to use in his or her daily job, the exam should focus on PHP itself and on those topics that a developer deals with often without any ties to a particular product.
Thus, although you will probably encounter one or more questions about database development during your exam, they will not be linked to a particular DBMS, such as MySQL or Oracle. Rather, they will deal with the general concepts of database programming and the standard SQL language.
What Does This Guide Cover?
The Zend PHP Certification Study Guide covers every topic that is part of the exam. It was developed by some of the very same authors who designed the exam's questions and was thoroughly reviewed to ensure that it provides every bit of information required to cover each subject appropriately.
One thing that this book is not is a PHP development tutorial or a reference book on the language and its extensions. Our goal in developing the guide is to provide you with a study aid that can help you focus on those topics that you will be questioned on during the exam. It is not a substitute for your experience as a PHP programmer in the real world, and it does not provide you with a "magic bullet" that will make you pass the test if you have never written a line of code in your life.
Remember that this bookand the certification guideare based on PHP 4. This is essential, particularly when it comes to object-oriented programming, where the differences between PHP 4 and PHP 5 are very pronounced. Whatever you read in this book, as well as anything that shows up in a question at the exam, does not take PHP 5 into account whatsoever.
Many of the questions in the exam have been designed so that they mimic scenarios that you are likely to encounter in real life. Many of them involve the practical analysis of snippets of PHP code that might contain bugs or that might rely on PHP's particular behavior in order to reach a particular goal that is not immediately obvious.
These are not trick questionsthey are designed to determine how well you understand the unique way in which PHP works so that, when a similar problem occurs in real life, you will be able to tackle it properly and efficiently.
We have designed this guide along the same lines. Although you will find a good amount of theory among the pages of this book, it will always be presented to you with an eye to its practical applications. In addition, each chapter includes a set of sample questions that are similar in structure to the ones you will find at the exam (although they are not the same, of course).
In line with our goal of giving you all the tools you need to successfully pass the exam, we thought you might also want to know what taking the exam is like. Chapter 13, "Getting Ready for the Certification Exam," discusses what to expect when you go to the certification center and how the exam works.
How Is the Guide Organized?
We intended the book to be read as a tutorial, rather than a reference. As such, the best way is to start with Chapter 1, "The Basics of PHP," and move your way to the end, as each chapter introduces new concepts by building on the information provided by the chapters that precede it.
While reading the guide, it's useful to remember that you are preparing for an exam. Read each section carefully and try to remember not only the essential points, but also those elements that might be useful while you're trying to tackle the exam.
If you already have experience in PHP developmentas you probably will if you intend to take the examyou might think that some of the topics we have covered in the guide are quite basicand, to some extent, they are. However, they are covered from the point of view of the exam, and this means that you might discover some facts that you are not aware of because you have not encountered a real-life scenario in which they are relevant, but that might well show up in a question during your test.
Finally, don't forget to peruse the sample questions that you can find at the end of each chapter. As we mentioned earlier, they are similar in structure (although not in content) to the real ones, and they rely heavily on the proper analysis of practical sample code. Answering them can help you not only to determine how well your studies are progressing, but also to familiarize yourself with the way the questions are phrased in the exam.
Other Resources You Might Want to Consult
As we mentioned at the beginning of this introduction, there is no substitute for experience when it comes to passing the exam. You'll find that very few questions are of a didactical nature and that most require some practical steps in order to find the right answer.
Although this guide covers all the topics that are part of the exam, you might want to examine some of the subjects in more depth. The best resource for this purpose is the PHP Manual, which you can find online at http://www.php.net or through your local PHP mirror. In fact, it's probably a good idea to keep the manual handy while you're reading this book and refer to it for additional information on a specific topic. Simply remember that the manual covers all versions of PHP, whereas this guide and the exam are specific to PHP 4.