Book Image

Mastering PHP 7

By : Branko Ajzele
Book Image

Mastering PHP 7

By: Branko Ajzele

Overview of this book

PHP is a server-side scripting language that is widely used for web development. With this book, you will get a deep understanding of the advanced programming concepts in PHP and how to apply it practically The book starts by unveiling the new features of PHP 7 and walks you through several important standards set by PHP Framework Interop Group (PHP-FIG). You’ll see, in detail, the working of all magic methods, and the importance of effective PHP OOP concepts, which will enable you to write effective PHP code. You will find out how to implement design patterns and resolve dependencies to make your code base more elegant and readable. You will also build web services alongside microservices architecture, interact with databases, and work around third-party packages to enrich applications. This book delves into the details of PHP performance optimization. You will learn about serverless architecture and the reactive programming paradigm that found its way in the PHP ecosystem. The book also explores the best ways of testing your code, debugging, tracing, profiling, and deploying your PHP application. By the end of the book, you will be able to create readable, reliable, and robust applications in PHP to meet modern day requirements in the software industry.
Table of Contents (24 chapters)
Title Page
Credits
About the Author
About the Reviewers
www.PacktPub.com
Customer Feedback
Preface
16
Debugging, Tracing, and Profiling

About the Reviewers

Martin Beaudry started his programming career 7 years ago by creating a software in C after going through the K&R book. He then switched to PHP to work as a web developer, becoming a Zend Certified PHP Engineer and Zend Certified Architect along the way. Before learning computer languages, he worked with human ones as a professional translator and editor.

Martin works in his own start-up and is one of Linux for PHP's contributors.

 

I want to thank my friend, Andrew Caya, for teaching me everything I needed to know to review this book.

 

 

 

Andrew Caya discovered his passion for computers at the age of 11 and started programming in GW-BASIC and QBASIC in the early 90s. He earned a master’s degree in Information Science and master's short program in public administration. After doing some software development in C, C++, and Perl, and some Linux system administration, he became a PHP developer more than 7 years ago. He is also a Zend Certified PHP Engineer and a Zend Certified Architect.

He is the creator of Linux for PHP, a lightweight, Docker-based, custom Linux project that allows PHP developers to easily compile and use recent versions of PHP in a variety of ways. He is also the lead developer of a popular Joomla! extension and has the great pleasure of contributing code to many open source projects.

He is currently a professional contract programmer in Montreal, Canada, a technical reviewer for Packt, and a loving husband and father.

 

 

 

Alexandru-Emil Lupu has about 10 years experience in the Web Development area. During this time, he got a lot of skills from the implementation of e-commerce platforms and presentation sites' code writing to online games. He is one of the developers who are constantly learning new programming languages, and he has no problem in understanding Ruby, PHP, Python, JavaScript, and Java code.

Alexandru is very passionate about programming and computer science. When he was young, he did not own a computer or an Internet connection (hard to believe, but true). He would go to an Internet cafe in order to read about his programming problems and would then struggle to implement them at home. He fondly remembers those days and hopes he's the same guy from 10 years ago with much more experience. For him, passion is the word that describes the challenge he faced while learning. He says it was not easy to be a youngster and one who was willing to learn new stuff. Coming home at 2-3 A.M., determined to install Linux just to learn about it, was not as easy as it sounds. He had a Pentium I at 133 MHz in the Pentium IV in the 1800 MHz era!

He is constantly learning and likes to stay close to well-trained and passionate people who better motivate him every day. This is the reason he joined the eJobs team to face a challenge. He likes teams who work intelligently and are energetic.

Alexandru is a Certified Scrum Master and is passionate about Agile Development. His experience also includes 3 years as a Ruby on Rails developer and CTO at 2Performant Network (2Parale), 4 years at eRepublik.com, an online game, during which he was responsible for a long list of tasks, including feature development, performance optimization, and he was also the tech lead for an internal project. He has learned the hard way the necessary skills to fulfill his day-to-day tasks at 2Performant.com and gained all the experience he needed to face new kind of challenges at eJobs.ro.

In his little free time, he also develops small personal projects. If he still has spare time, he reads some technical or project management books or articles. When he is relaxing, he watches thriller movies and also likes playing shooter or strategy games.

He doesn't talk too much, but he is willing to teach programming to others. If you meet him over a coffee, prepare yourself to be entertained--he likes to tell a lot of contextual jokes.

You can interact with him at http://github.com/alecslupu.

 

 

 

Mario Magdic is a full-stack software developer originally from Croatia and currently residing in Dublin, Ireland, where he moved 2 years ago to work for a FinTech company. He was first introduced to the wonderful world of software development in a high school programming class and decided to make it his career.

During his career, he has had an opportunity to work with various technologies and programming languages and is always happy to improve and learn new things.