Introduction to Modern Programming with PHP
4.5 (176 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
925 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Introduction to Modern Programming with PHP to your Wishlist.

Add to Wishlist

Introduction to Modern Programming with PHP

An introduction to modern web programming techniques with PHP, Postgresql, Composer, and Vagrant
4.5 (176 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
925 students enrolled
Created by Trevor Sawler
Last updated 5/2016
Learn Fest Sale
Current price: $10 Original price: $20 Discount: 50% off
4 days left at this price!
30-Day Money-Back Guarantee
  • 16 hours on-demand video
  • 3 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Understand how to program in PHP 5.6 using Object Oriented principles
  • Use Composer to manage our PHP packages
  • Use Vagrant to build and maintain a virtual server on our local machine
  • Maintain a repository of code using Git version control
  • Build mobile friendly web pages using HTML5
  • Understand and use CSS, including Twitter Bootstrap
  • Understand and use Javascript, including jQuery
  • Install, configure, and use a database using Postgresql
  • Build an interactive website using PHP 5.6, using modern design principles
View Curriculum
  • All you need is a Windows or Macintosh computer and an Internet connection.

Learn to build a web application using modern design principles and tools, including HTML5, Git, Twitter Bootstrap, Postgresql, PHP5, Vagrant and JQuery. We'll go through the entire web development process from start to finish, and learn how to build a modern, stable, secure web application. No prior programming experience is required.

Who is the target audience?
  • This course is intended for people interested in learning how to program. It is not intended for experienced programmers.
Students Who Viewed This Course Also Viewed
Curriculum For This Course
Expand All 123 Lectures Collapse All 123 Lectures 15:56:55
Introduction and course Requirements
3 Lectures 14:06

A brief introduction to the course.

Preview 05:55

Installing Atom, an easy to use text editor that we'll be using to build HTML, Javascript, and all the other technologies we'll be covering in this course.

Installing Atom, our text editor

How to use Atom, our text editor, to manage project files

Using Atom, our text editor of choice
Hypertext markup language - HTML
4 Lectures 39:48

Building a very simple web page

Building a simple HTML file

Using an Atom package to automatically format our HTML

Proper HTML formatting

Displaying lists of information, either with bullets, or as a numbered list

A few more HTML tags

How to add images, tables, and forms to your web page

Images, tables, and a simple form
Cascading Stylesheets - CSS
6 Lectures 01:01:31

A brief introduction to cascading style sheets

How CSS works

Making the login form more useful

Improving the login form

How to install and use Twitter Bootstrap, a great CSS framework

Using Twitter Bootstrap

How to position things on the page with Bootstrap

Rows, columns, and the Bootstrap grid

Creating a simple form which uses Bootstrap's CSS

Bootstrap forms

Creating a user registration form using Twitter Bootstrap's classes

Creating a registration form
Javascript and jQuery
5 Lectures 51:27

The basics of Javascript syntax. We'll cover more as we go along.

Basic Javascript syntax

An introduction to the Javascript function

Javascript functions

Simple (primitive, really) validation with hand-written functions

Simple form validation

A more elegant form of validation using JQuery and JQuery-Validate

Better form validation with jQuery

Selecting by class, id, or html tag with jQuery

Selecting things with jQuery
Vagrant - Installing a virtual server
8 Lectures 44:28

Starting and using Terminal program on Macs, and the Command Prompt on Windows

A brief introduction to the command line

Installing the necessary software to get our VM up and running

Installing Vagrant and Virtualbox

Get a copy of the virtual machine we'll be using for the remainder of the course.

Vagrant up! Getting the virtual machine

Vagrant Up for Windows Users

Putty, an ssh client for Windows users

Putty - ssh for Windows users

A brief introduction to some useful Unix/Linux commands

Using Vagrant and the command line

Using vagrant share to make our website available to others for review

Vagrant share - making your website available to the public

Updating to PHP 7
9 Lectures 01:12:05

Everyone makes mistakes, so I'm not going to hide mine

About errors

A simple introduction to PHP and variables
Introducing PHP

Some resources that you will find helpful as we proceed

Useful PHP resources

Writing our very first PHP script

Our first PHP script

Arrays and loops

A simple way (which we'll improve upon) to handle posting form information

Handling form data with PHP

Assignment: complete handling our posted form data

Another useful data structure

Associative arrays

How to persist data across web pages

Introducing Composer
9 Lectures 01:18:14
Installing Composer

Configuring Composer

Installing more packages, and rearranging application structure

Force all web page requests to go through our index file

Changing our web server configuration

Simple routing

Better routing

Handling posted data with a controller
Introducing Postgresql, our database
2 Lectures 27:02
Introduction to Postgres

PHP and SQL (the hard way)
Object Relational Mapping, or Databases made simpler
3 Lectures 26:00
Setting up our ORM

Accessing the database eloquently

Revisiting our register form
Better Validation
10 Lectures 01:09:10

Respect/Validate -- an excellent validation package

Installing respect/validate

Using an existing validation package in our app

Using respect/validate

A simple assignment on validation


Improving our autoloader, and implementing namespacing

PSR-4 and namespacing

Ensuring emails are actually valid emails

Building our validation class

Making sure that passwords and emails are entered correctly

Validating equality

Improving our code style, and a helper app to automate the process

PSR-2 Coding Style

Password hashing made simple

Storing password information safely

Finishing off our validation class and logic

Completing validation and generating a better error message
17 More Sections
About the Instructor
Trevor Sawler
4.5 Average rating
315 Reviews
1,616 Students
3 Courses

I have twenty years of experience in professional software development, and twenty years of experience as a University level educator and researcher.

As an entrepreneur, I have worked with a broad range of clients, including Thomson Nelson, Hewlett Packard, the Royal Bank of Canada, Keybank, Sprint, and many, many others. I also have extensive management and project management experience. I have led teams of fifty developers and artists on multi-million dollar projects, and much smaller teams on much smaller projects.

As a professor, I have taught in a wide variety of course areas, including Computer Science, English, Irish, and American literature, and a number of "crossover" courses that bridge the liberal arts and technologies.

I have won regional, national, and international awards for my work in the IT field, and have also won awards for my teaching and research efforts as a University professor.