No more legacy,
let's overcome the past and move toward the future!
Jung Sangwoo's "Awesome Laravel"
PHP 7+ Programming: Object-Oriented
이 강좌는[[STRONG_1]] 『[[/STRONG_1]][[A_2]]PHP 7+ 프로그래밍[[/A_2]][[STRONG_3]]』[[/STRONG_3]] 강좌의 [[STRONG_4]]후속 강좌[[/STRONG_4]]입니다. 다만 이전 강좌를 듣지 않더라도 기초지식이 있다면 따라올 수 있습니다.
Curriculum
Object-oriented programming, built-in classes, PSR, Composer, MVC (Model, View, Controller) - we cover the fundamentals needed to learn modern PHP. Once you complete the entire course, you'll be ready to start with the Laravel framework.
What is object-oriented programming?
Learn PHP object-oriented syntax. Study from the basics of classes and objects to various features added to modern PHP such as generators and reference expressions. We'll also discuss unique characteristics of the PHP language, including inheritance and context keywords.
Built-in classes, you should at least know this much!
"PHP 7+ Programming" course didn't cover topics like Classes, DateTime, Directory, Reflection, SPL and other built-in classes used in PHP, which we'll explore here. Additionally, we'll also learn about interfaces such as Iterator, ArrayAccess. Of course, if you think this content is too lengthy, you can always come back to it later.
What are the PHP standard recommendations?
We'll learn about PSR(PHP Standard Recommendation). This is a recommendation discussed by PHP-FIG when doing PHP programming, and it includes content we need to know such as coding style (PSR-1, PSR-12), autoloader (PSR-4), etc. Therefore, we'll discuss this.
How long are you going to keep making and using it yourself?
Do we have to create all the code used on web pages ourselves? No, we don't. There are many wonderful open source packages created by various people around the world. We should actively use these.
Package manager, that is exactly Composer. Using this, you can use various packages created by users and utilize the Packagist registry. In this lesson, we will experience the benefits of using packages by using Whoops, one of the PHP packages.
Creating My Own Framework
Frameworks include multiple libraries and often provide project templates or structures for developers to use conveniently. We will configure it to focus on MVC(Model, View, Controller). Of course, we will not use any packages made by others here. The package we create here will be downloaded and used directly with Composer in the bulletin board project that will come up next.
From functional to object-oriented
MVC(Model, View, Controller) and object-oriented programming will be actively used to transform the bulletin board project. Additionally, we will go through the process of downloading and directly applying the package created in 'Building My Own Framework'. However, the code will be written from scratch starting with index.php, and we have decided not to use existing code so that you can follow along even if you haven't taken the previous course.
Things you need before taking the course
The development server uses a built-in embedded server, but if needed, you can use tools like WAMP or refer to the PHP Manual.
- PHP 7.4.21 TS(Thread Safe) (64bit)
- XDebug 3.0.4 TS (64bit)
- The code editor uses VSCode(Visual Studio Code).
The frontend uses UIkit CSS Framework and CKEditor 5 as the text editor.
Q&A
Since July 24, 2023, I have not been accepting questions about the course due to personal reasons. However, you can still review the Q&A that has been written over the years. I recommend looking for questions in the community.
Official Documentation & Books
Goodbye legacy,
A modern PHP fundamentals bible for beginners!
『PHP 7+ Programming』
Time to explore PHP 8, which appeared after 5 years
[Free] 『Learning PHP 8's New Features』