PHP Foundations


The PHP Foundations class taught at Lone Star PHP used the PHPEmbark open source training curriculum. The class was a full-day tutorial taught by Elizabeth Marie Smith, Patrick Andersen, Ben Ramsey, Matthew Turland, and Matt Frost.

PHPEmbark is designed for people with no previous programming experience who have basic knowledge of html and css to get a quickstart into programming.

Required: A computer running Windows 7 or 8, OS X 10.6 or newer, or a Linux variant (we will assume Ubuntu Desktop for the purposes of this course), The ability to navigate the filesystem, including creating and deleting files and folders, The ability to download and install software on your computer, Basic knowledge of writing html and css

The syllabus is divided into 4 sections

  • Part 1: Programming Logic - We’ll cover the very basics of programming variables, logic, conditionals and looping, functions. We’ll then move into data types and math and type juggling we’ll end with more complex data structures common to PHP - objects and arrays.

  • Part 2: The Internet - We’ll cover what HTTP is and some basic theory how requests and responses work an overview of HTML, CSS, and a very small section on Javascript and the concepts behind server vs. client side programming. Then we’ll move into basic http verbs get and post and work with forms.

  • Part 3: SQL and Crud using sqlite we’ll go over teh basics of sql and how it works, and learn about insert, update, delete, and select. Then we’ll tie together our new internet forms knowledge with our new sql knowledge.

  • Part 4: Code Design We’ll learn the basics of setting up a simple project: - separation of concerns - php “templates” - best practices for simple projects - ways to find help and support as you continue learning.

Each section will have a portion that is lecture, a small amount to read online, some practice examples and “quiz”/practice style questions and end with some practical example

By the end of the class we’ll have put together our practical examples into a functioning application.