No more legacy,
let's overcome the past and move toward the future!
Jung Sangwoo's "Awesome Laravel"
PHP 7+ Programming
From basic grammar to built-in functions, web security, and creating bulletin boards, I created this course with the intention of making it a bible for those starting with the PHP language at the beginner and elementary levels.
Curriculum
In this course, we cover PHP programming starting from basic syntax and progressing to built-in functions, web security, and creating bulletin boards - covering the foundational aspects of web development. We've structured this course to include various built-in functions that weren't covered in the existing 'PHP 7+ Programming' course, and to improve code quality through functionalization rather than just simple implementation in bulletin board development.
Essential PHP Basic Syntax You Must Know
Learn the basic syntax for PHP 7+ versions. This course is primarily based on PHP 7.2 version, but is also structured to cover Arrow Function and Spread Operator in Array that appeared in PHP 7.4 version. Therefore, by following the course slowly, you can learn up to PHP 7.4 version, which was the latest version at the time this course was created.
Commonly Used PHP Built-in Functions
You'll learn about String, Password Hashing and other built-in functions that are essential to know when programming in PHP. While the content may seem extensive, you'll use a significant number of these functions when creating bulletin boards. However, since it proceeds in a simple listing format, it might be boring. Therefore, one approach is to start with creating bulletin boards first and then refer to the built-in functions section.
*A significantly higher number of dropouts occur in the built-in functions chapter compared to other chapters. This is because it proceeds in a reference-style format, making it less engaging. Rather than trying to complete everything, it's advisable to take this course when you think you need that particular functionality.
Don't forget about security.
You'll learn about Session, XSS and other web security topics. PHP has a relatively low barrier to entry compared to other languages, which often leads to security considerations being overlooked. This can become problematic when developing web applications, and even though we may not be security experts, we need to follow basic security practices.
In the end, you're destined to create a bulletin board.
We create a bulletin board with a legacy project. The project begins by writing index.php from scratch. Such a bulletin board project may not fit in the current web application world where development is mainly done with frameworks. However, to understand even a little bit about Laravel, which is a PHP framework, it's necessary to try writing a project in legacy style, and surprisingly, there are also many PHP 4 and PHP 5 applications written in legacy style in the field.
How long will it remain legacy?
We follow a similar approach to the legacy bulletin board project by describing 'what kind of architecture' it represents. Since it's not a 'real' object-oriented implementation, we won't mention that. However, by functionalizing the existing code, you can see the code undergo dramatic changes. We plan to discuss implementing it in an object-oriented way in "PHP 7+ Programming: Object-Oriented".
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)
- Code Editor: We use VSCode (Visual Studio Code).
- Example code: Available for download in the 『00 - Environment』 lecture.
We use CKEditor 5 as the CSS Framework and text editor for the frontend.
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
Q. What should I study after this course?
A. You must study the object-oriented part. It's better to refer to PHP documentation for materials. Of course, since PHP can also do functional programming, it's good to look into that as well. Additionally, you should learn about PHP Coding Standard, PSR(PHP Standard Recommendation) and others. One thing for certain is that it's better to avoid moving on to the Laravel framework before studying object-oriented programming.
The next course in this series is PHP 7+ Programming: Object-Oriented. While this course mainly focused on functions, the object-oriented course will primarily cover classes and objects, and will also explore deeper topics such as package managers.
On June 9, 2020, the 『PHP 7+ Programming: Object-Oriented』 course was released.
Now it's time to take a step forward into object-oriented programming
『PHP 7+ Programming: Object-Oriented』