As the leading scripting language for the web, PHP has been a key offering on IBM i since 2006. With its robust abilities to both access Db2 as well as ILE programs and artifacts, PHP provides capabilities for implementing dynamic web-centric applications that leverage existing business logic. When it comes to open source, IBM i has a long history of both contributing to and adopting various open source standards.

Join us as we explore the diverse and inextricable links between IBM i, PHP, and open source, and provide in-depth articles, webinars, whitepapers, and training resources that can help developers excel with IBM i.

IBM i and Db2

There are several approaches that can be taken with PHP to leverage Db2 to web-interfaces including writing custom PHP code, leveraging third-party solutions such as phpGrid, and developing MVC applications with frameworks such as the Laminas Project or its middleware runtime, Mezzio.

Take a look at this blog for more information on PHP and Db2 and see the many ways data can be accessed by PHP for production web access to applications.

Additionally, with the availability of the open source database management system, MariaDB, IBM i shops enjoy the ability to implement their own variant of the LAMP stack (iAMP) to deploy cutting-edge, business-ready productivity solutions such as WordPress, Drupal, Magento, and many others, all unchanged on the platform.

Additional Resources

Zend Server / PHP and IBM i

PHP has been available for the IBM i platform since the introduction of Zend Core (the predecessor to Zend Server) in 2006.

PHP is at the forefront of what is often termed "modernization" efforts on the IBM i platform. One of the key benefits of PHP is the ability to access Db2 data and extend the reach and influence of the data via web forms. This article on Db2 databases introduces you to several facets of Db2 access including writing custom code, using 3rd party utilities for deploying data-grids, and using frameworks/middleware to streamline the development process.

Often, we think of modernization efforts as rip-and-replace – essentially developing/deploying a new application that replaces an existing solution. This can often be a costly and time-consuming effort and may not be what is needed. Rather than rip-and-replace, 'augmentation' is an effort for modernization that should be considered.

With this approach, additional applications, in our case PHP scripts, are implemented to provide additional functionality that leverages the existing data that is generated and maintained by the existing 5250-based application. This blog on custom PHP applications discusses a common approach to modernization used by customers in the ERP (Enterprise Resource Planning) space that use PHP applications as new was of consuming the ERP data.

Community PHP Releases / ZendPHP and IBM i

Zend has a community release of PHP available for the IBM i platform called ZendPHP. With ZendPHP, teams can now keep their applications supported on end of life PHP versions, giving them the freedom to upgrade PHP versions on their schedule – not the community or operating system release schedule.

Additional information for those looking for a PHP-only experience read: Getting started with ZendPHP and installing Zend PHP.

It is important to note that Zend Server continues to be offered for IBM i; there are key differences between Zend Server's PHP offering and ZendPHP. Zend Server is the preferred solution for IBM i customers as it provides a self-contained application server with all the tools needed to monitor, debug, and audit a PHP application in one location.

Keep in mind that Zend Server delivers both a certified PHP stack (language and extensions) as well as an application server with numerous functions to assist with both development and production including:

  1. Monitoring
  2. Application Profiling
  3. Code Tracing
  4. Application Deployment

If you're looking for more information on choosing the right PHP for IBM i, watch the webinar below or read this article. It gives a more in-depth discussion on the factors you need to consider when choosing a PHP distribution for use on IBM i.

Support

The PHP Group provides fixes for the open source PHP engine, specifically two years of bug and security fixes and a third year of just security fixes for each minor release they create (e.g., 7.3, 7.4, 8.0, etc.). It needs to be understood that at the end of three years there is no additional support for a given PHP release.

Let’s contrast that with support available with Zend Server and ZendPHP. First, with a paid license of Zend Server or ZendPHP you have access to the Zend by Perforce support team for comprehensive product support. Additionally, when it comes to bug and security patches, Zend provides support for a minimum of five years from the community release date – two plus years past the community provided support. Due to the challenges of migrating to some versions of PHP, Zend may opt to extend a given release for long term support.

While the no charge version of ZendPHP will be updated periodically, long term support is only available in the licensed versions of ZendPHP and Zend Server.

As an example, support from the community for version 7.1 of PHP ended at the end of 2019 while support from Zend Server for the same version continues through the end of 2021.

The following matrix summarizes the support differences between ZendPHP and Zend Server:

 

ZendPHP
(without license)

Zend Server & ZendPHP

  

Bronze

Silver

Gold

Bug Fixes

2 years past release

2+ years past end of support

Security Patch

3 years past release

2+ years past end of support

The importance of Long-Term Support (LTS) cannot be overstated. You can review the LTS dates for both ZendPHP and Zend Server here and you can learn more about the importance of LTS in the IBM i space here.

PHP Toolkit

For direct access to RPG & COBOL programs and other native IBM i artifacts, the popular XMLSERVICE PHP Toolkit is included in both Zend Server and ZendPHP. The Toolkit has been a staple of PHP and IBM I since 2010 and is used by countless IBM i based sites to integrate trusted business logic with web content.

Database Drivers

As the “glue” that brings dynamic content to the web, database drivers are imperative to PHP in general and certainly to PHP on the IBM i community.

The principal database access of importance to IBM i is, of course Db2, but for those looking to implement LAMP-based open source productivity solutions, the driver for working with MySQL/MariaDB is also important.

The following chart summarizes both the drivers that are available for Community PHP and Zend Server’s certified stack:

Driver

Description

ZendPHP

Zend Server

ibm_db2

Procedural Db2 calls

Delivered with ZendPHP installation

Delivered with Zend Server installation

pdo_ibm

Object Oriented Interface

Delivered with ZendPHP installation

Delivered with Zend Server installation

ODBC / PDO-ODBC

Open DataBase Connectivity Client

Delivered with ZendPHP installation

Delivered with Zend Server installation

MySQL / pdo_mysql

Procedural MySQL (MariaDB) calls

Delivered with ZendPHP installation

Delivered with Zend Server installation

Open Source and IBM i

IBM has a long history of both contributing to as well as adopting various open source standards like OpenSSL and TLS as well as open source solutions. Consider the following timeline:

Image Zend Hub PHP and IBM i Body Hub 2

The PHP stack delivered by the Zend Server (and its predecessors) is seen by many as the driving force for open source on the platform. It drew attention to the capabilities that open source has on the platform, both for internal applications as well as leveraging data and business logic to a larger constituency. And make no mistake, while other open source solutions have come to the platform, PHP remains a key for open source adoption.

Open source on IBM i leverages the Portable Application Solution Environment (PASE) to provide a Unix-like environment for running solutions such as PHP, ActiveMQ, Nginx, and many others. Check out this blog for more information on IBM PASE.

Advantages of Open Source on IBM i

With support for open source package management (rpm/yum) ecosystem on IBM i, the availability and adoption of open source on the platform has been growing.

IBM i shops can now benefit from the same technologically superior solutions as other platforms. It means choice — choice in both the types of solutions we deploy as well as choice between solutions/products for satisfying a particular business requirement.

Explore more about the source of this growth and examines why now may be the time to consider bringing open source solutions to your IBM i platform in this white paper. In addition, the paper provides a review of the advantages of open source, as well as provide an understanding of the open source development and support paradigms.

Getting Started With Open Source

Open source opens a new world of possibilities for modernization, application development, and solution deployment on the IBM i platform. For those making their first foray into open source on IBM i, the requisite technologies and processes can be borderline mystifying. Listen to this discussion about common concerns, including quality, security, open source development vs. proprietary development, and how open source ownership comes into play.

▶︎ WEBINAR: DEMYSTIFYING OPEN SOURCE

Open Source Support

Perforce has a team of enterprise architects that work with customers and open source on a daily basis to provide comprehensive support – both pro-active as well as break-fix. Check out the OpenLogic page for more information.

IBM i Education

As the PHP company, the Zend by Perforce team specializes in developing and delivering training. Training offered includes specialized training for IBM i customers which includes a foundations course on how to access Db2 from PHP and shows how to use PHP to leverage existing business logic from programs in the ILE like RPG, Cobol, and CL.

You can check out the Zend training site for more information on the Zend by Perforce classes as well as PHP certifications.

Services

While version 7.x of PHP has been available for since late 2015 and brings impressive performance improvements, it is estimated that better than 50% of businesses continue to run their PHP applications on version 5.x of PHP.

The Professional Services team at Zend by Perforce as a wealth of experience and tooling to help customers with migrating between PHP versions. In addition to migrations, professional services can also help with items such as Performance Auditing, Skills Transfer with Zend Server On Boarding and PHP Smart Start, as well as custom consulting. Check out the Zend Services page for more information.

Hands on With PHP and Open Source on IBM i

Want to learn more? There is no better way to get familiar with a technology then to jump in with both feet and start to work with the technology. Unfortunately, we don't always have the luxury of installing additional software on our production systems.

Perforce has developed a number of self-paced hands-on exercises that leverage a public-facing IBM i instance to allow you to explore a given technology/solution, all at no cost! Exercises both for PHP as well as various open source solutions are available. Check out our IBM i training page for more information and registration details.

See IBM i Exercises

Additional IBM i Resources

Looking for additional resources for IBM i? Be sure to check out our selection of IBM i blogs and other resources below.

IBM i Articles

White Papers

Recorded Webinars

Training