PHP as a seasoned player in web application development is still going strong today. Its popularity is gained due to its simplicity approach and ease of web interface building. Although another web development tools like Ruby on Rails starts to gain popularity, PHP is still the most chosen programming language for web application.
As an old-timer in web application development, PHP has a very rich array of application framework. Web application framework provides foundation for application development, similar to the groundwork in developing houses or building. They provide the supporting structure for developing application such as libraries, database access, template and session; Those are core components to build an application. In this article we will discuss one of the most complete PHP application development framework: Laravel.
Laravel PHP Application Framework
As one of the most popular PHP web application framework is Laravel, is a free and open-source tools. Licensed under MIT License which has become the famous free software license used for many application framework, MIT License gives end users explicit right to use, copy, modify, merge, publish, distribute, sublicense, including right to sell itas well. Sublicensing means every software project developed using Laravel as its framework, inherit legal right to redistribute application using MIT License too.
It was built to provide better alternative to one of the popular PHP Application Framework: Code Igniter. Laravel provide a more focus of implementation on MVC approach than Code Igniter. Laravel also provides template engine called Blade and features that simplify the application development.
Laravel was built on philosophy to create an enjoyable development environment and giving programmer a pleasant experience in building application. Laravel syntax is designed to be expressive and elegant and presented as syntactic sugar, a code that make programming language easier, more expressive, more clear to read in human language.
Three Most Outstanding Features of Laravel
Laravel is a rich-features application framework which provide developers with the outstanding efficient way from the first time installation to developing application. Equipped with so many built-in features to ease repetitive programming task such as authentication, authorization, localization, models, views, sessions, routing and database management.
From all of the features, we noted three most outstanding ones in Laravel. They are:
a. Composer dependency manager
b. Eloquent Object Relational Mapping
c. Blade template engine
A. Composer dependency manager
Composer dependency manager is a package manager at the application level that serve as a standard format for dependencies management for Laravel thus maintaining its required libraries. Composer can be installed in either Linux and BSD, and also available for Windows and OSX.
With Composer, installation of Laravel is so easy and you just need to install Composer in your Linux or BSD machine. In order to install Composer, you must have a PHP 5.3.2 or later installed. Then download the Composer executable from getcomposer.org using curl:
# curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer
The pipe ( | ) is to relocate the composer binary in a form of PHAR (PHP Archive) from your working directory to /usr/local/bin/composer.
Now you have Composer in your system, and we are ready to install Laravel.
Installation process of Laravel is very simple and straightforward, because Composer has taken care of all dependencies matter. The steps is starting with the following command:
# composer global require "laravel/installer=~1.1"
The command above will download laravel installer needed to run a laravel and its project. After that, run the following command to give name to your project, let us say we will create a project called cms, run the next command:
# laravel new cms
It will install the directory named cms which contain a fresh Laravel installation complete with all dependencies.
B. Eloquent Object Relational Mapping
Object Relational Mapping or ORM is the approach in which cater the MVC approach that provides expressive syntax to work on database object. ORM is capable to map the object define in the Object Oriented language into database, whether a relational database or a document oriented database such as XML database. We will discuss more about Laravel’s implementation of ORM in the next article. As a brief explanation, ORM enable us to translate the following SQL command:
SELECT * FROM WHERE =
In the PHP code become:
:: where (‘field_name’, ‘’)
C. Blade Template Engine
Template system is a must to develop a rapid web application. It processes the two most important elements in the web application: content and data. Laravel with its Blade engine has a collection of template with data models, that capable to transform the data model into view. With its IoC (Inversion of Control) principle, Laravel makes it easy to generate new object using IoC containers.
With those three most outstanding features in Laravel, it is logical for Laravel to be able to stand out among other web application frameworks.