You are on page 1of 8

Available online at www.sciencedirect.

com
Available online at www.sciencedirect.com

Available ScienceDirect
ScienceDirect
Availableonline
onlineatatwww.sciencedirect.com
www.sciencedirect.com
Procedia Manufacturing 00 (2018) 000–000
ScienceDirect
ScienceDirect 
Procedia Manufacturing 00 (2018) 000–000
www.elsevier.com/locate/procedia
www.elsevier.com/locate/procedia
Procedia Manufacturing 32 (2019) 864–871
Procedia Manufacturing 00 (2017) 000–000
www.elsevier.com/locate/procedia

The 12th International Conference Interdisciplinarity in Engineering


The 12th International Conference Interdisciplinarity in Engineering

A
A Comparative
Comparative study
study of
of PHP
PHP frameworks
frameworks performance
performance
Manufacturing Engineering
a, Society International
b Conference 2017,
c MESIC 2017, 28-30 June
d
Majida Laaziria, *, Khaoula Benmoussab,Samira Khouljic, Mohamed Larbi Kerkebd
Majida Laaziri *, Khaoula Benmoussa ,Samira Khoulji , Mohamed Larbi Kerkeb
2017,
0F

0F
Vigo (Pontevedra), Spain
a,b,c
a,b,c
Information System Engineering Resarch Group, National School of Applied Sciences, Abdelmalek Essaâdi University, Tetouan, Morocco
Information System System
Engineering ResarchResarch
Group,Group,
National SchoolofofSciences,
Applied Sciences, Abdelmalek Essaâdi University, Tetouan, Morocco
Costing models for capacity optimization in Industry 4.0: Trade-off
d
d
Information Engineering Faculty Abdelmalek Essaadi University, Tetouan, Morocco
Information System Engineering Resarch Group, Faculty of Sciences, Abdelmalek Essaadi University, Tetouan, Morocco

Abstract
between used capacity and operational efficiency
Abstract
The increased demand for Web A.development
Santanaahas , P.ledAfonso
to a higha,*, A. Zanin
demand b
, R. Wernke
for efficiency, reliability, bmaintainability and scalability,
The increased demand for Web development has led to a high demand for efficiency, reliability, maintainability and scalability,
which is why a PHP framework is an essential part of the web development toolbox. PHP frameworks are meant to facilitate
which is why a PHP framework is an essential part of the 4800-058
web development toolbox. PHP frameworks are meant to facilitate
software development and are becomingUniversity of Minho, Guimarães, Portugal
a
more and more popular in web-based projects, as they speed up the development
software development and are becoming more b and more
Unochapecó, popularChapecó,
89809-000 in web-based
SC, projects, as they speed up the development
Brazil
process and reduce time, thus helping to meet coding standards. Bullet-proof and maintainable code. The final web applications
process and reduce time, thus helping to meet coding standards. Bullet-proof and maintainable code. The final web applications
created by the PHP framework will be more stable and secure.
created by the PHP framework will be more stable and secure.
Today, there are hundreds of PHP frameworks. Each of these frameworks has its own advantages over others, however, selecting
Today, there are hundreds of PHP frameworks. Each of these frameworks has its own advantages over others, however, selecting
the best PHP framework for the developer can be tricky, which requires a good understanding of the different PHP frameworks.
Abstract
the best PHP framework for the developer can be tricky, which requires a good understanding of the different PHP frameworks.
For this reason, this research has conducted a method of evaluation and performance testing to compare three PHP frameworks
For this reason, this research has conducted a method of evaluation and performance testing to compare three PHP frameworks
most used in web development to help the developer to better choose the most effective PHP framework for future web
Under
most usedthe inconcept
development.
of "Industry
web development 4.0",theproduction
to help developer to processes will the
better choose be most
pushed to be PHP
effective increasingly
frameworkinterconnected,
for future web
development. based on a real time basis and, necessarily, much more efficient. In this context, capacity optimization
information
goes
©
© 2018
beyond
2019 The
the traditional
Authors.
The Authors. Published
Published
aim
by of
by
capacity
Elsevier Ltd.maximization, contributing also for organization’s profitability and value.
© 2018
Indeed, The Authors.
lean Publishedand
management by Elsevier
Elsevier Ltd.
Ltd. improvement approaches suggest capacity optimization instead of
continuous
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
This is an open
maximization. access article
The studyunderunder the
of capacity CC BY-NC-ND
optimization licensecosting
(https://creativecommons.org/licenses/by-nc-nd/4.0/)
Selection and peer-review responsibility of the 12thand
Internationalmodels is anInterdisciplinarity
Conference important research topic that deserves
in Engineering.
Selection and peer-review under responsibility of the 12th International Conference Interdisciplinarity in Engineering.
contributions from both the practical and theoretical perspectives. This paper presents and discusses a mathematical
model forPHP
Keywords: frameworks;
capacity Laravel; Symfony;
management based CodeIgniter,Evaluation,Performance
on different costing models (ABC and TDABC). A generic model has been
Keywords: PHP frameworks; Laravel; Symfony; CodeIgniter,Evaluation,Performance
developed and it was used to analyze idle capacity and to design strategies towards the maximization of organization’s
value. The trade-off capacity maximization vs operational efficiency is highlighted and it is shown that capacity
1. Introduction
optimization might hide operational inefficiency.
1. Introduction
© 2017 The Authors. Published by Elsevier B.V.
The PHP
Peer-review programming
under responsibilitylanguage is considered
of the scientific one
committee of the of the most Engineering
Manufacturing widely used scripting
Society languages
International in web
Conference
The PHP programming language is considered one of the most widely used scripting languages in web
application development because it offers great flexibility, is easy to use and easy to learn [1], [2]. It has intuitive
2017.
application development because it offers great flexibility, is easy to use and easy to learn [1], [2]. It has intuitive
features, scalable, efficient execution, open source code, cross-platform compatibility and its SQL supports. The
features, Cost
scalable, efficient execution,
Capacityopen source code, cross-platformEfficiency
compatibility and its SQL supports. The
authors [3] have
Keywords: performed
Models; a comparative
ABC; TDABC; analysis Idle
Management; of the mainOperational
Capacity; programming languages such as PHP, Perl and VB
authors [3] have performed a comparative analysis of the main programming languages such as PHP, Perl and VB

1. Introduction
* Corresponding author. Tel.:+212-699-263-997.
* The
Corresponding
cost
E-mail author.
of idle
address: Tel.:+212-699-263-997.
capacity is a fundamental information for companies and their management of extreme importance
majida.laaziri@gmail.com
E-mail address: majida.laaziri@gmail.com
in modern production systems. In general, it is defined as unused capacity or production potential and can be measured
in several©ways:
2351-9789 tons
2018 The of production,
Authors. available
Published by Elsevier Ltd.hours of manufacturing, etc. The management of the idle capacity
2351-9789
This © 2018
is an Afonso.
open The Authors.
access Published by Elsevier Ltd.
* Paulo
This is an and Tel.:article
openpeer-review
access article
under
+351 253
under
the761;
510 CC BY-NC-ND
the CC fax: +351 253license
BY-NC-ND
(https://creativecommons.org/licenses/by-nc-nd/4.0/)
604 741
license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Selection
E-mail address: under responsibility
psafonso@dps.uminho.pt of the 12th International Conference Interdisciplinarity in Engineering.
Selection and peer-review under responsibility of the 12th International Conference Interdisciplinarity in Engineering.

2351-9789 © 2017 The Authors. Published by Elsevier B.V.


Peer-review
2351-9789 © under
2019responsibility
The Authors. of the scientificbycommittee
Published Elsevier of the Manufacturing Engineering Society International Conference 2017.
Ltd.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Selection and peer-review under responsibility of the 12th International Conference Interdisciplinarity in Engineering.
10.1016/j.promfg.2019.02.295
Majida Laaziri et al. / Procedia Manufacturing 32 (2019) 864–871 865
2 Majida Laaziri et al./ Procedia Manufacturing 00 (2018) 000–000

.NET, Ruby, AspectJ, Haskell, C ++, Scala, Java and Scheme with the main factors of program development. Ruby
and PHP are considered the most ideal languages for Web development.
PHP is a server-side scripting language used to create dynamic and interactive web pages. During development
with simple PHP, business logic is mixed with database queries and presentation tags. Due to the mix of this
development mode, the maintenance and scalability of the application becomes difficult. PHP has brought different
development frameworks to solve this problem.
PHP frameworks help developers build web applications faster and easier by providing a basic framework model,
as well as a complete set of APIs, libraries, and extensions, and help developers become more productive reducing
the repetitive code in the project.
These PHP frameworks are based on a Model, View and Controller (MVC) design model. This model is an
effective and proven way to generate modular, organized applications. As a design model, MVC typically divides an
application into separate layers that can be analyzed and sometimes implemented separately. By uncoupling models
and views, MVC helps reduce the complexity of architectural design and increase code flexibility and reuse [4].
Lately, many PHP frameworks have been chosen by the developers, such as Symfony and CodeIgniter, Laravel,
Cake PHP, Yii, etc., and although these have many advantages, the selection of the best PHP framework remains a
problem and the Developers need to know how to choose the most appropriate PHP framework with the best support
features to use in their project. the authors [5]compared and analyzed the effect of the data abstraction layer (ORM)
on the performances of CakePHP and CodeIgniter. They finalized the fact that Cake PHP is suitable for enterprise
applications and large applications, while CodeIgniter was suitable for small and medium-sized applications.
François Zaninotto and Fabien Potencier , [6] highlighted the tools provided by Symfony for professional
environments. The authors [7] state that the Laravel framework is preferable for large-scale Web projects that
require faster delivery with fewer resources.
The main objective of this research is to help the developer to better choose the best frameworks, based on the
QSOS evaluation method and thus to test the performance of the three most popular frameworks.

2. Evaluation by the QSOS method of the three frameworks (Laravel, Smfony, CodeIgniter)

2.1. Definition

QSOS is a free software evaluation method, designed by Atos Origin, which aims to compare, evaluate and select
software in a reasoned manner and adapted to the specific context of use [8]. This method, as well as the tools to
implement it (evaluation sheet editor, generator of comparison and choice grids) are under free licenses. It is based
on an iterative process consisting of four stages (Fig. 1).
The general process of QSOS is broken down into several interrelated stages.
• Define Constitution and enrichment of the repositories used by the other stages.
• Evaluate Evaluation of a software version (functional coverage and maturity of the project).
• Qualify Weighting of the assessment according to the context.
• Select Comparison and Software Selection, based on the data from the previous steps.
866 Majida Laaziri et al. / Procedia Manufacturing 32 (2019) 864–871
Majida Laaziri et al./ Procedia Manufacturing 00 (2018) 000–000 3

Fig. 1. QSOS process[8]

Iterative process: The general process presented can be applied with different granularities. This makes it possible
to adapt to the level of detail desired in the qualification and selection process as well as to proceed by iterative loops
to refine each of the four stages.

2.2. Evaluation grid, of the three frameworks (Laravel, Smfony, CodeIgniter)

This method is not specific to PHP frameworks, but to all open source software. Here is the evaluation grid (table
1), of the three most used frameworks [9].

For each feature, the scoring rule is:


• 0: if the feature is not covered.
• 1: if the feature is partially covered.
• 2: if the feature is fully covered.

Table 1. The main categories of the QSOS method [9]


Intrinsic durability Laravel [10] Symfony[11] CodeIgniter[12]
Maturity
Age 1 1 1
release date: 2011 release date: December 2005 release date: 2006
Stability 2 2 2
stable version: 5.4.27 stable version 3.3.9 stable version 3.1.6
History, known issues 2 2 2
a bug history is available on the site [10]
Probability or 1 1 0
provenance of a FORK Laravel is Symfony's Fork Symfony is a FORK of Mojavi2
Adoption
Popularity 2 2 2
References 2 2 1
many references (Amazon,etc) Many references (Yahoo!, etc.). cf. some references
http:// symfonians.net/ whose Emmaus.uk
applications/
Community of 2 2 2
contributors the community is active on the community is important and the community is active on the dedicated
dedicated forums, blogs and active on the dedicated forums, forums
Majida Laaziri et al. / Procedia Manufacturing 32 (2019) 864–871 867
4 Majida Laaziri et al./ Procedia Manufacturing 00 (2018) 000–000

Google Groups blogs and Google Groups


Publication 1 1 1
publication of English books « publication of English books « The publication of a book in English «
larevel 5.x cookbook »and « Definitive Guide to Symfony » and professionel codigniter » and « Codeigniter
larevel essentials » etc. « Develop your website with for Rapid Php Application Development»etc.
Framework symfony 3» etc.
Direction of developments
Leading team 2 2 2
Laravel management team Fabien Potencier of Sensio Labs EllisLab management team
Direction mode 2 1 1
a person a person a person
Activity
Number of developers, 2 2 2
identification, turnover a dozen people fifty people Ten people
Activity around bugs 2 2 2
bug tracking is available via responsive forum and bug tracking bug tracking accessible via the page
github laravel available via a symfony trac BugTracker
Activities around 2 2 2
features a section of the forum is a section of the forum is devoted a section of the forum is devoted to the
devoted to the demand for new to the demand for new features demand for new features
features
Activities on releases 2 2 2
Independence of developments
Independence of 1 1 1
developments
Industrialized solution Laravel [10] Symfony[11] CodeIgniter[12]
Services
Training 2 2 2
Fabien Le corre and Steven Sil Anaska, Sqli or Clever Age are for Jérôme Megel is for example offers a
are for example providers example providers offering codeigniter training
Symfony training
offering training laravel
Support 2 2 1
several existing offers forums, several existing offers (Clever provides support for this framework via
mailing lists and Google Age, Sensio, etc.), forums, mailing forums, tutorials
Groups, tutorials etc. lists and Google
Groups,, tutorials
Documentation
Documentation 2 2 2
Technical
Architecture
Architecture model 2 2 2
(MVC)
AJAX 2 2 0
code generator 2 2 0
Quality method
Quality assurance 2 2 1
Tools 2 2 1
Packaging
Source 2 2 1
Debian 2 2 2
FreeBSD 1 1 1
HP-UX 1 1 1
868 Majida Laaziri et al. / Procedia Manufacturing 32 (2019) 864–871
Majida Laaziri et al./ Procedia Manufacturing 00 (2018) 000–000 5

Mac OS X 1 1 1
Mandriva 1 1 1
NetBSD 1 1 1
OpenBSD 1 1 1
RedHat/Fedora 1 1 1
Solaris 1 1 1
SuSE 1 1 1
Windows 1 1 1
operability
Ease of use, ergonomics 2 2 2
Administration / 2 2 2
Supervision

3. Evaluation of the performance

3.1. Performance Test

To perform a benchmarking analysis between Laravel, Symfony and CodeIgniter to evaluate their performance
we are based on several criteria such as request per second, memory usage, response time and the number of files
required on each MVC. To apply these evaluation criteria for each framework, we performed a web page design,
and Apache Benchmark was defined as a test tool. The computer on which the tests were performed has the
following specifications: Intel Core i5, 8GB DDR3, SATA3 SSD, Ubuntu 14.04 LTS, Apache 2.4, PHP 5.5. The
result of this test is as follows:

• Request per second:


Fig.2 shows the performance comparison between three MVCs: Laravel, Symfony and CodeIgniter.

Fig.2. Request per second among PHP framework.

• Memory usage
Fig.3 shows the amount of memory used in the display of the tested web page. The smallest number of KB is
preferable to the use of memory.
Majida Laaziri et al. / Procedia Manufacturing 32 (2019) 864–871 869
6 Majida Laaziri et al./ Procedia Manufacturing 00 (2018) 000–000

Fig.3. Memory usage


• Response Time
Fig.4 shows the response time from each framework, this is one of the most important criteria for evaluating
MVC performance. It is calculated in milliseconds.

Fig.4. Response time for various MVC


• Numbers of file
Fig.5 shows the number of files included or required in the web page made for each framework. A smaller
amount of required files represents that type of infrastructure that will be loaded first in terms of the file being
executed. A smaller number of files required is very valuable.

Fig.5 Numbers of file are required by various MVC.


870 Majida Laaziri et al. / Procedia Manufacturing 32 (2019) 864–871
Majida Laaziri et al./ Procedia Manufacturing 00 (2018) 000–000 7

3.2. Result

- In Fig. 2, we can say that Laravel is able to handle 3000 requests per second compared to others.
- Fig. 3 indicates that Laravel is approximately 518 KB compared to CodeIgniter, followed by symfony with a
memory of approximately 1711
- In Fig. 4 laravel appeared with the least response time, 4.46 milliseconds compared to CodeIgniter with 7.2
followed by Symfony with 12 milliseconds.
- As shown in Fig. 5, CodeIgniter displays the smallest file of 22, then Symfony with 15 files followed by
laravel with 26 files.

4. Discussion

From the QSOS method, which is officially recognized as a standard, to compare the three framworks, it can be
deduced that in the case of the Laravel and Symfony frameworks currently respect modern standards and
requirements. They are in demand and have huge features. Compared to CodeIgniter does not meet current
requirements.
For evaluation of the performance of the three frameworks: Laravel Symfony and CodeIgniter according to the
evaluation criteria such as request per second, memory usage, response time and number of files required, The
results obtained shows that Laravel surpasses the others MVC frameworks.
Laravel for rapid development of large scale applications, even with less experienced resources, For beginners, it
will be easier to start with Laravel than Symfony, requires experienced developers, for complex application
development. For the codeIgniter, This framework is "light" it leaves a lot of flexibility to the developer, It is ideal
for simple and short projects

5. Conclusion

The Patten MVC-based PHP Framework has completed the separation of the user interface and business logic for
the development of web applications, providing basic methods and clarity of realization of the design and structure.
PHP frameworks have always been the default choice for developers to create complex web applications, especially
large-scale open source projects, and enterprise CMS and CRM systems.
However, the choice of a Web development framework is not an easy task, since this choice involves quite a
variety of issues: internal design of the framework, ease of handling, technical qualities, future evolution, etc. But,
beyond the simple qualities of the frameworks compared in this article, several constants must be taken into account
before starting to develop by one of these frameworks: the mode of operation, development teams, infrastructure and
maintenance, current and future functional requirements, hosting platform constraints, queries per second, average
system load, memory usage, and the number of files required.
In any case, the choice of a development framework can only improve the quality of an existing which, without
procedures, conventions or standards, is rarely well designed. It remains to determine which framework is best
suited to the needs of developers and the context of the web project.

ACKNOWLEDGEMENTS

This research was supported by Information System Engineering Resarch Group. We thank our colleagues in the
IT department of National School of Applied Sciences, Abdelmalek Essaadi University provided insights and
expertise that greatly helped the research.

References

[1] N. Richeton and C. Version, “Frameworks PHP,” Consultant, pp. 1–78.


[2] V. Petrosyan, “A Guide to Popular PHP Frameworks for Beginners | SEJ,” 2016. .
Majida Laaziri et al. / Procedia Manufacturing 32 (2019) 864–871 871
8 Majida Laaziri et al./ Procedia Manufacturing 00 (2018) 000–000

[3] V. Dwarampudi, S. S. Dhillon, J. Shah, N. J. Sebastian, and N. S. Kanigicharla, “Comparative study of the Pros and Cons of Programming
languages Java, Scala, C++, Haskell, VB .NET, AspectJ, Perl, Ruby, PHP & Scheme Revision 1.0.”
[4] R. F. Olanrewaju, T. Islam, and N. Ali, “An empirical study of the evolution of PHP MVC framework,” in Lecture Notes in Electrical
Engineering, 2015, vol. 315, pp. 399–410.
[5] A. Fayyaz and M. Madiha, “Performance Evaluation of PHP Frameworks (CakePHP and CodeIgniter) in relation to the Object-Relational
Mapping, with respect to Load Testing,” pp. 1–54, 2013.
[6] N. Prokofyeva and V. Boltunova, “Analysis and Practical Application of PHP Frameworks in Development of Web Information Systems,”
Procedia Comput. Sci., vol. 104, no. December 2016, pp. 51–56, 2016.
[7] R. Das and D. Prasad Saikia, “Comparison of Procedural PHP with Codeigniter and Laravel Framework,” Int. J. Curr. Trends Eng. Res. Sci. J.
Impact Factor, vol. 2, no. 6, pp. 42–48, 2016.
[8] R. Semeteys, Technology innovation management review “Method for Qualification and Selection of Open Source Software,” no. May 2008.
Talent First Network, 2008.
[9] L. Blanc, E. Gouleau, O. Mansour, T. Rivoallan, V. Lemaire, and X. Lacot, “Frameworks PHP pour l’entreprise,” pp. 1–38.
[10] “Laravel - The PHP Framework For Web Artisans.” [Online]. Available: https://laravel.com/. .
[11] “Symfony, High Performance PHP Framework for Web Development.” [Online]. Available: https://symfony.com/. .
[12] “CodeIgniter Web Framework.” [Online]. Available: https://codeigniter.com/. .

You might also like