Search icon
Subscription
0
Cart icon
Close icon
You have no products in your basket yet
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
The Art of Modern PHP 8

You're reading from  The Art of Modern PHP 8

Product type Book
Published in Oct 2021
Publisher Packt
ISBN-13 9781800566156
Pages 420 pages
Edition 1st Edition
Languages
Author (1):
Joseph Edmonds Joseph Edmonds
Profile icon Joseph Edmonds

Table of Contents (19) Chapters

Preface 1. Section 1 – PHP 8 OOP
2. Chapter 1: Object-Oriented PHP 3. Chapter 2: Inheritance and Composition, Encapsulation and Visibility, Interfaces and Concretions 4. Chapter 3: Advanced OOP Features 5. Section 2 – PHP Types
6. Chapter 4: Scalar, Arrays, and Special Types 7. Chapter 5: Object Types, Interfaces, and Unions 8. Chapter 6: Parameter, Property, and Return Types 9. Section 3 – Clean PHP 8 Patterns and Style
10. Chapter 7: Design Patterns and Clean Code 11. Chapter 8: Model, View, Controller (MVC) Example 12. Chapter 9: Dependency Injection Example 13. Section 4 – PHP 8 Composer Package Management (and PHP 8.1)
14. Chapter 10: Composer For Dependencies 15. Chapter 11: Creating Your Own Composer Package 16. Section 5 – Bonus Section - PHP 8.1
17. Chapter 12: The Awesomeness That Is 8.1 18. Other Books You May Enjoy

Chapter 1: Object-Oriented PHP

In this first part of the book, we are going to explore modern object-oriented PHP. While there isn't sufficient space in this book to do a deep dive into this topic, we hope that you will be able to use the contents of the following three chapters as a jumping point for your own further study and experimentation. To be clear, for any PHP language features you see that you don't understand, you are absolutely encouraged to put the book down and go and start reading the PHP docs so that you can gain a fuller understanding of that particular feature. To underline this, you will see frequent links to the official documentation. You are encouraged to follow these links and read into any feature that you are not intimately familiar with.

Some readers may already be very familiar with object-oriented programming (OOP) in PHP and for those, this first part might be a nice refresher. You never know, you might learn something new! If you are not familiar with modern object-oriented PHP, then there is likely to be a lot to take in. I seriously hope you don't find this overwhelming. All I can say is, it's worth persevering as OOP is fundamental to modern PHP.

This chapter is an introduction to OOP in general and includes a review of some popular object-oriented PHP projects and frameworks that you are encouraged to go and have a look at.

By the end of part 1, especially if you take the time to fill in the gaps by hitting the official docs, you should be fairly up to date with how OOP works in modern PHP.

The following topics will be covered in this chapter:

  • What is OOP?
  • PHP OOP basics

Before we begin this chapter in depth, you are strongly encouraged to have a thorough read through the official documentation on classes and objects:

PHP: Classes and Objects - Manual

https://www.php.net/manual/en/language.oop5.php

In this chapter, we are going to look in general at what we mean by OOP and what it means to you. We'll start by understanding what the phrase OOP actually means and compare it to some other programming styles. I will recommend some PHP projects and packages that you can look at if you want to get your hands dirty with an existing code base. After that, we are going to jump in at the deep end with a look at inheritance, and then also look at using composition instead of inheritance. After that, we'll take a quick look at the Standard PHP Library, have a look at exceptions, and understand how modern PHP projects ensure that they have robust error handling. For the big finale of this chapter, we'll dip our toes in the deep waters of metaprogramming with reflection and attributes. It's a huge amount of content to cover in a comparatively tiny amount of text.

For this chapter, and all the other chapters in the book, you can find all the code samples in the main repo for the book available on GitHub at https://github.com/PacktPublishing/The-Art-of-Modern-PHP-8

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime}