Laravel/PHP Programming Training

Laravel/PHP Programming Training

17 June 2023 — 13 August 2023

ICT Courses

A Laravel/PHP Programming teaches web app development using Laravel, covering topics like installation, DB Integration, security and testing for beginners or experienced devs.

Price 300 Euro
Application deadline June 15
Apply Here

Course Details

☆  Schedule

• 72 Hours*
• 2 days* / 4 hours per day* / 8 hours per week*
• 9 Weeks

Saturday and Sunday from 12:00 - 16:00

This course will start on June 17. Training Room 1st floor.

☆  What are the course perquisites?

• An ambition to be a creative professional
• Some familiarity with version control systems, such as Git
• Basic knowledge of HTML/CSS/JavaScript/PHP/MySQL
• Basic knowledge of English, writing/reading
• 16+ years old

☆  Abstract

About 80% of the web works with PHP. Facebook, Wikipedia, Tumblr, Slack, and Upwork are just a few of the companies that use it. It is a proven and tested programming language that has been around for more than 25 years in the market. It includes a mature ecosystem that includes a powerful system for managing libraries, all the libraries a developer may need, as well as a giant community. This ecosystem includes some of the most widely used frameworks in web development for fast and easy management, such as Laravel, Symfony, and Laminas.

☆  About the course

Laravel is an elegant web development framework that offers a structure and a starting point for creating web applications, allowing developers to focus on the application rather than the implementation details. It is progressive because it is adaptable for developers of different technical levels, easily scalable, and works for applications with little traffic as well as those with millions of users. Additionally, it has a large and talented community of thousands of developers.

☆  Who is the course for?

This course is aimed at:
• Students
• IT Professionals
• Those looking to break into the business of Web applications development

The targeted audience in this training is quite inexperienced and skill-hungry. They are looking for employment and professional training programs in which they want to be trained and get the opportunity for a job. They may be able to attend a full-time training course.

☆  What will be learned?

Understand main concepts of programming in Laravel framework
• Use MySQL as a database
• Build PHP scripts and MySQL queries
• Understand Object Oriented Programming concepts
• Up-to-date web application best practices
• Build an real-life web application with PHP/Laravel

☆  Configuring PHP

• PHP introduction
• Installing and configuring a local development environment
• Configuring Visual Studio Code for PHP development
• Using and configuring Git and GitHub

☆  Object Oriented Programming in PHP

• Classes and objects, properties and methods
• Inheritance, composition & encapsulation
• Interfaces and abstract classes
• Value objects and immutability
• Exceptions

☆  Composer and libraries

• The concept of autoloading in PHP
• Using composer and searching for libraries
• Autoloading inPHP

☆  Database manipulation

• Creating databases
• Executing queries and data fetching
• Preventing SQL injections

☆  Laravel prerequisites, introduction and configuring

- Laravel and MVC pattern introduction
- Initial configuring
- Laravel installation tool
- Why we use tools and libraries

☆  The basics

- The request lifecycle
- Routes, controllers and views
- Working with CSS and Javascript
- Route wildcard constraints

☆  Blade templating engine

- Basics
- Modes of work with blade

☆  Database manipulation in Laravel

- Environment files and database constraints
- Migrations 101
- Eloquent ORM and the Active Record pattern
- Creating new models
- Performing updates and HTML escaping
- Mitigating Mass Assignment Vulnerabilities
- Route model binding
- Starting with eloquent relationships
- The N+1 problem with ORMs & eager loading relationships
- Database seeding
- Model factories

☆  Integrating with a design system

- Tailwind CSS
- Blade components and CSS grids
- Integrating with Alpine.js
- Creating new components

☆  The filesystem & caching

- Use caching for expensive operations
- Use the filesystem class to read a directory
- Use existing libraries to simplify our work

☆  Localization

- Supporting multiple languages
- Changing the application language

☆  Search, filtering & pagination

- Search functionality
- Optimisations and refactoring code
- Advanced search techniques
- Inspecting and debugging queries
- Pagination introduction
- Pagination with Eloquent

☆  Forms & Authentication

- Building a user registration page
- Password hashing
- Failing validation and preserving old input data
- Displaying a success flash message
- Login & logout
- Building the login page
- Laravel Breeze introduction

☆  Forms and authentication

- Creating a register page
- Password hashing
- Validation and saving previous data
- Displaying success messages
- Logging in and out
- Creating a login page
- Laravel Breeze introduction

☆  Using external APIs

- Github’s API
- Creating an authentication service
- The service container and interfaces
- Laravel Socialite intro

☆  Admin section and authorisation

- Limiting access to admins only
- Validation and file uploading
- Gates and Policies in Laravel

☆  Emails and notifications

- Introduction
- Sending emails
- Different types of notifications

☆  React 101

- React and frontend frameworks intro
- Classes, functions and hooks in React
- State, props and events
- Components

☆  Testing

- Why should we test apps
- Different types of tests
- PHPUnit
- Testing with Laravel

☆  Certification criteria

Certificate of Attendance / Completion

- Course attendance - 80%.
- Final Project - 20%

Laravel/PHP Programming Training

Uran Hajzeraj


Uran Hajzeraj is a software engineer from Prishtina, with extensive experience in developing web applications, mostly on PHP. Currently, Uran works as a backend engineer for “Teamleader”, a Belgian SaaS company, specialized on work management solutions, counting over 15,000 clients.


© ICK — Innovation Centre Kosovo