21
Sat, Dec
3 New Articles

The Once and Future PHP

Web Languages
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

Where has PHP been, where is it now, and where is it going?

 

PHP, the incredibly popular server-side scripting language originally created by Rasmus Lerdorf in 1995, has become one of the greatest success stories of the open-source software movement. Today, PHP is estimated to be installed on millions of web servers worldwide, fueling an estimated 244 million websites.

 

Some analysts claim that over 90% of the Internet is enabled by PHP scripts. Yet, ironically, some analysts and professional language critics still view PHP's success as a quirk. What's the truth? How important is PHP to the Internet or to our organizations?

 

As of April 2013, PHP use on web servers now outstrips the use of every other server-side scripting language on the Internet. It's implemented more than ASP.NET, Java, ColdFusion, Perl, Ruby, and Python combined. As the language-to-know, it isin a single word"imperative."

 

Market Share of Server-Side Languages

 

2010
  1 Jan

2011
  1 Jan

2012
  1 Jan

2013
  1 Jan

2013
  10 Apr

PHP

72.5%

75.3%

77.3%

78.7%

79.0%

ASP.NET

24.4%

23.4%

21.7%

20.2%

20.0%

Java

4.0%

3.8%

4.0%

4.1%

4.1%

ColdFusion

 

1.3%

1.2%

1.1%

1.1%

Perl

 

1.1%

1.0%

0.8%

0.7%

Ruby

0.5%

0.5%

0.6%

0.5%

0.5%

Python

0.3%

0.3%

0.2%

0.2%

0.2%

 

Yet, despite its popularityor because of itPHP has had some unique growing pains. So understanding how PHP grew can help us understand how the latest PHP tools are bringing added power and functionality to our systems.

A Just-In-Time Scripting Language

When PHP first arrived on the scene, web pages were still primarily hand-coded with static HTML. HTML 2.0 was released in the latter days of 1995, but it provided very limited handling of variable data. Netscape's JavaScripta lightweight syntax of Javawas still called LiveScript back then and was just making its appearance in the Netscape browser. The scripting language Perl Version 5.0 had been released the year before but was quickly running behind the dynamic demands of web designers. Open-source Content Management Systems (CMS) were still 10 years away.

 

The requirements of dynamic and individualized websites called for a more powerful server-side scripting language that was object-oriented and easy to learn, handled forms, and accessed databases to rapidly assemble a Web page based upon ad hoc browser input. Lerdorf's "Personal Home Page" scripting language was the germ of what today has become PHP (a recursive acronym for PHP: Hypertext Preprocessor). It was easy to learn, handled forms, and had the potential to serve admirably as a web server scripting language.

 

In 1997. Zeev Suraski and Andi Gutmans rewrote the original PHP parser that formed the base of the PHP 3 language. The official launch came in June 1998. Suraski and Gutmans then started a new rewrite of PHP's core, producing the Zend Engine in 1999. They also founded Zend Technologies in Ramat   Gan, Israel. On May 22, 2000, PHP 4, powered by the Zend Engine 1.0, was released. On July 13, 2004, PHP 5 was released, powered by a new Zend Engine II, and we've all been running on some version of PHP 5 ever since.

The Saga of PHP 6.0

Given PHP's popularity as an open-source programming language, one might have assumed that the continued development of the syntax and the functionality of PHP would push version after version through web servers around the world, fragmenting the support and the usability of PHP. But something peculiar happened on the way to version 6 of PHP.

 

Version 6.0 was to be internationalized with full Unicode support, enabling double-byte languages such as Chinese and Japanese to transparently make use of PHP. But, according to reports, developers ran into difficulties working with UTF-16 (16-bit Unicode Transformation Format). There were problems with performance, as UTF-16 required twice as much memory. And there were also issues with backward compatibility to previous versions of PHP.

 

The result was that many open-source contributors to the PHP project lost interest. Some refused to use the 6.0 "trunk" as their main development tree. Instead, they chose to develop using the stable 5.2/5.3 trees. Others, according to reports, left the PHP development community entirely.

 

In May of 2010, the originator of PHP, Rasmus Lerdorf, acknowledged that the momentum for an internationalized version as defined by PHP 6 was flagging in the open-source developer community. Consequently, it was decided that many of the enhancements planned for PHP 6 should be reincorporated into a new PHP 5.3 release. As a result, the PHP version 6with UTP-16 internationalizationbecame a project with no planned release date.

 

Did that spell the end to PHP evolution? Not in the least.

Continual Evolution of PHP

The PHP Group, the group that controls the development of the PHP language, decided to bring a more formalized timeline for delivering PHP updates. One reason was, with so many websites embracing PHP as a scripting language, there needed to be a means of controlling identified problems and delivering fixes in a predictable manner. At the same time, however, there was a need for establishing stability in the face of PHP's open-source nature, in which anyone might make changes to the base code.

 

With these two thoughts in mind, the PHP Group decided that PHP would receive updates with fixes every month, incrementing the release numbers within the base trunk. Then, once per year, a minor release would also include new features. Every minor release would have at least have two years of security and bug fixes, followed by at least one year of security-only fixes, for a total of a three-year release and support process for every minor release. According to this timeline, no new features (unless small and self-contained) are introduced into a minor release during the three-year release process.

 

This timeline has permitted sites using PHP to keep on top of release levels coming through the PHP community, while simultaneously stabilizing the rate of change that the open-source project was experiencing.

 

How well is this plan working?

 

In March of 2012, version 5.4 was released. The current version of PHP as of May of 2013 is 5.4.15, and a Release Candidate for 5.5.0 was made available for inspection on May 9. So the language is continuing to evolve at a definable and stable rate, and the result has been an unprecedented acceptance of PHP as one of the key infrastructural pieces of the World Wide Web.

The Open-Source Stack and the Server Evolution

Meanwhile, the PHP stackthe open-source code that comprises the functionality of the PHP interpreterhas essentially gone viral, with PHP servers appearing for almost every conceivable computing platform. There are PHP interpretive servers for Windows, UNIX, Linux, Mac OS, andmost importantlythe IBM i.

 

This popularity has inspired companies to build PHP compilers that compile PHP source into bytecode. In fact, several compilers have been developed that decouple the PHP language from the interpreter. Advantages of compilation include better execution speed, static analysis, and improved interoperability with code written in other languages. PHP compilers of note include Phalanger, which compiles PHP into Common Intermediate Language (CIL) bytecode, and HipHop, developed at Facebook and available as open source, which transforms the PHP Script into C++ and then compiles it, reducing server load up to 50%. Other companies have developed PHP servers with comprehensive caching facilities to increase performance of PHP source. And of course, Zend Technologies has created the complete development environment for PHP with its Zend Studio IDE. But that's only the beginning.

Advances at Zend Technologies

Zend Technologies, the company that spearheaded so much of the phenomenal growth of PHP, continues to chart the future of PHP by providing a vast array of new services and features to both the open-source PHP community and the commercial marketplace.

 

The most important news for IBM i users of PHP has been the release last April of Zend's current PHP server, entitled Zend Server 6.

 

Zend Server 6 enables enterprises with IBM i systems to create, publish, and manage mobile applications using PHP on their IBM i system, while leveraging the value of existing back-end programs, applications, and business logic. 

 

The Zend Server 6 runs natively on the IBM i and provides a fully supported platform for creating modern web and mobile applications that access the RPG/COBOL code, as well as business logic and the DB2/400 database that resides on the IBM i. This means that IBM i clients can avoid the significant risk and cost of rewriting their legacy business logic in order to launch new modern applications. Instead, IBM i users can focus their resources on unlocking new opportunities. 

PHP Going Mobile

Zend also announced a new Mobile Smart Start for IBM i. This is a fixed-price training and consulting engagement designed to provide everything a team needs to deliver their first mobile application project on the IBM i. The offering includes the design of a pilot project or specific piece of mobile application functionality, installation assistance, focused and tailored training either onsite or online, and hands-on coaching by Zend consultants through the development and deployment of the pilot mobile project.

PHP in the Cloud

Finally, one of the most interesting offerings is the Zend Developer Cloud at PHPCloud.com. The Zend Developer Cloud is a cloud-based environment designed to help programmers code more quickly and efficiently. It includes a robust PHP stack, advanced debugging capabilities, collaboration tools, and access to some of the best tools Zend has to offer. Zend Developer Cloud doesn't require any installation, and it's free.

 

When the developer is ready to push the application into live space, he can run on any of the cloud services that support Zend Server, such as Amazon and IBM SmartCloud. Or, if it's to be a private cloud application, it can be deployed locally on-premise using Zend Server. On-premise deployment can also be fully automated to deliver equivalent benefits of a public cloud turnkey solution. Using the same application platform in development, testing, and production means faster and easier deployment.

The Future of PHP

Obviously, a lot has changed since PHP first came on the scene in 1995. And PHP has grown to meet the challenges of those changes. Yet, for some developers who continue to seek the Holy Grail of language perfection, the question of a future for PHP seems ludicrous. For these nay-sayers, PHP still suffers from a lack of rigorous structure, a growing fragmentation of server services, and a tarnished reputation for the unusual delay of the PHP Version 6 stack. "Sure, PHP is popular," these developers say, "but it's not a serious language for serious developers."

 

Yet the statistics don't lie: PHP is the predominant server-side scripting language on the Internet with over 79% deployment, and it continues to gain market share, at the expense of the so-called "more serious languages" like ASP.NET, Java, Ruby, and others.

 

Consequently, to ignore PHP is like trying to ignore oxygen in the atmosphere: PHP has become one of the most important pieces of the Internet infrastructure, and it will be difficult for another upstart language to unseat its strategic place.

 

In the meantime, the PHP communityin particular, Zend Technologiescontinues to propel PHP to meet the demands of the Internet with constructive and creative implementations while they build upon the base established by the open-source software movement.

 

This is what makes the rise of PHP so interesting to industry watchers: It's an organic, living language fueled by millions of developers who are pouring their creativity into real-world applications and uses. And, unlike so many other "serious" languages, no one "owns" PHP: It's an open-source venture that has transformedand will continue to transform in the decades to comehow we utilize the Internet.

 

So where is PHP going? The answer seems to be "Everywhere!"

 

 

BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

$

Book Reviews

Resource Center

  • SB Profound WC 5536 Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application. You can find Part 1 here. In Part 2 of our free Node.js Webinar Series, Brian May teaches you the different tooling options available for writing code, debugging, and using Git for version control. Brian will briefly discuss the different tools available, and demonstrate his preferred setup for Node development on IBM i or any platform. Attend this webinar to learn:

  • SB Profound WP 5539More than ever, there is a demand for IT to deliver innovation. Your IBM i has been an essential part of your business operations for years. However, your organization may struggle to maintain the current system and implement new projects. The thousands of customers we've worked with and surveyed state that expectations regarding the digital footprint and vision of the company are not aligned with the current IT environment.

  • SB HelpSystems ROBOT Generic IBM announced the E1080 servers using the latest Power10 processor in September 2021. The most powerful processor from IBM to date, Power10 is designed to handle the demands of doing business in today’s high-tech atmosphere, including running cloud applications, supporting big data, and managing AI workloads. But what does Power10 mean for your data center? In this recorded webinar, IBMers Dan Sundt and Dylan Boday join IBM Power Champion Tom Huntington for a discussion on why Power10 technology is the right strategic investment if you run IBM i, AIX, or Linux. In this action-packed hour, Tom will share trends from the IBM i and AIX user communities while Dan and Dylan dive into the tech specs for key hardware, including:

  • Magic MarkTRY the one package that solves all your document design and printing challenges on all your platforms. Produce bar code labels, electronic forms, ad hoc reports, and RFID tags – without programming! MarkMagic is the only document design and print solution that combines report writing, WYSIWYG label and forms design, and conditional printing in one integrated product. Make sure your data survives when catastrophe hits. Request your trial now!  Request Now.

  • SB HelpSystems ROBOT GenericForms of ransomware has been around for over 30 years, and with more and more organizations suffering attacks each year, it continues to endure. What has made ransomware such a durable threat and what is the best way to combat it? In order to prevent ransomware, organizations must first understand how it works.

  • SB HelpSystems ROBOT GenericIT security is a top priority for businesses around the world, but most IBM i pros don’t know where to begin—and most cybersecurity experts don’t know IBM i. In this session, Robin Tatam explores the business impact of lax IBM i security, the top vulnerabilities putting IBM i at risk, and the steps you can take to protect your organization. If you’re looking to avoid unexpected downtime or corrupted data, you don’t want to miss this session.

  • SB HelpSystems ROBOT GenericCan you trust all of your users all of the time? A typical end user receives 16 malicious emails each month, but only 17 percent of these phishing campaigns are reported to IT. Once an attack is underway, most organizations won’t discover the breach until six months later. A staggering amount of damage can occur in that time. Despite these risks, 93 percent of organizations are leaving their IBM i systems vulnerable to cybercrime. In this on-demand webinar, IBM i security experts Robin Tatam and Sandi Moore will reveal:

  • FORTRA Disaster protection is vital to every business. Yet, it often consists of patched together procedures that are prone to error. From automatic backups to data encryption to media management, Robot automates the routine (yet often complex) tasks of iSeries backup and recovery, saving you time and money and making the process safer and more reliable. Automate your backups with the Robot Backup and Recovery Solution. Key features include:

  • FORTRAManaging messages on your IBM i can be more than a full-time job if you have to do it manually. Messages need a response and resources must be monitored—often over multiple systems and across platforms. How can you be sure you won’t miss important system events? Automate your message center with the Robot Message Management Solution. Key features include:

  • FORTRAThe thought of printing, distributing, and storing iSeries reports manually may reduce you to tears. Paper and labor costs associated with report generation can spiral out of control. Mountains of paper threaten to swamp your files. Robot automates report bursting, distribution, bundling, and archiving, and offers secure, selective online report viewing. Manage your reports with the Robot Report Management Solution. Key features include:

  • FORTRAFor over 30 years, Robot has been a leader in systems management for IBM i. With batch job creation and scheduling at its core, the Robot Job Scheduling Solution reduces the opportunity for human error and helps you maintain service levels, automating even the biggest, most complex runbooks. Manage your job schedule with the Robot Job Scheduling Solution. Key features include:

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • LANSAWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed. Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

  • LANSASupply Chain is becoming increasingly complex and unpredictable. From raw materials for manufacturing to food supply chains, the journey from source to production to delivery to consumers is marred with inefficiencies, manual processes, shortages, recalls, counterfeits, and scandals. In this webinar, we discuss how:

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • Profound Logic Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application.

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: