Book Image

Building RESTful Web Services with PHP 7

By : Waheed ud din
Book Image

Building RESTful Web Services with PHP 7

By: Waheed ud din

Overview of this book

REST is the most wide spread and effective standard to develop APIs for internet services. With the way PHP and its eco-system has modernized the way code is written by simplifying various operations, it is useful to develop RESTful APIs with PHP 7 and modern tools. This book explains in detail how to create your own RESTful API in PHP 7 that can be consumed by other users in your organization. Starting with a brief introduction to the fundamentals of REST architecture and the new features in PHP 7, you will learn to implement basic RESTful API endpoints using vanilla PHP. The book explains how to identify flaws in security and design and teach you how to tackle them. You will learn about composer, Lumen framework and how to make your RESTful API cleaner, secure and efficient. The book emphasizes on automated tests, teaches about different testing types and give a brief introduction to microservices which is the natural way forward. After reading this book, you will have a clear understanding of the REST architecture and you can build a web service from scratch.
Table of Contents (16 chapters)
Title Page
About the Author
About the Reviewer
Customer Feedback

Setting up the database

We need to set up our for the blog. In fact, we already did set this up in Chapter 3, Creating Restful Endpoints. We can use that database here as well. In fact, we will have the same DB structure, so we can easily use the same DB, but this is not recommended. In Lumen, we use migrations to create DB structure. It is not mandatory but it is useful so you can write migration once and use it to create DB structure anywhere. This purpose can be served by SQL files but the beauty of migration is that it works across different RDBMS as well. So create a DB manually, and name it blog. Now, we will write migration for structure.

Writing migrations

To create migration files in Lumen, we can use this in the blog directory to create file:

php artisan make:migration create_users_table

You will see something similar to this:

Created Migration: 2017_06_23_180043_create_users_table

and a file with this name will be created in the /blog/database/migrations directory. In this file,...