PHP dynamic programming language

PHP_FCGI_MAX_REQUESTS Solves Job Cleanup Issues

One of PHP’s strengths is that each PHP job or process cleans itself up after every request. This makes PHP very reliable and stable.

On occasion, though, an extension may have a bug that leaks memory or causes other problems over time. If that happens, PHP’s FastCGI settings provide a solution.

Read more

PHP 8.3 Coming to IBM i This Year

PHP on IBM iI had to chuckle when someone at a recent conference seemed surprised that PHP was still a vital force in web and API development. He hadn’t heard much about PHP lately at conferences.

My explanation: “It’s reliable and the major problems have been solved.”

I continued: “There’s a significant PHP update each year, plus monthly fixes. It’s evolving steadily, with attention to backward compatibility, all changes discussed in the open, easy to manage, no surprises.”

Read more

Integrate Python, Node, PHP, etc. with CL & RPG on IBM i – 2023 Update

QSHONIA few years ago I introduced you to my QShell on i utility – QSHONI. QSHONI makes it easy for traditional CL, RPG, and COBOL programs to call Python utilities and other QShell/PASE utility programs (PHP, Node, Java, etc.) and directly use their output. QSHONI opened up a whole new world of integrations to open source apps from RPG, CL, and COBOL.

In this post I will update you on new features that have been added to the QSHONI utilities over the past 12 months.

Read more

Connecting to IBM i Db2 with the Laravel PHP Framework

Laravel FrameworkLaravel has been inspiring loyalty among PHP developers for its documentation, community, and many built-in features.

Like most PHP frameworks, Laravel is cross-platform and can work with IBM i and Db2 data. This article shows how to take full advantage of Laravel’s built-in database components by installing an IBM i-specific extension to Laravel’s database connection class.

Read more

Edit IFS Files Using Visual Studio Code for IBM i

Code for IBM iVisual Studio Code (VS Code) is a lightweight source code editor that runs on multiple desktops, including Windows, Linux, and MacOS. It provides built-in support for PHP, Node.js, Python, and many other languages and runtimes.

Halcyon Tech’s Code for IBM i extension adds the ability to edit IBM i Integrated File System (IFS) files inside VS Code. It’s easy to get set up to access and edit IFS-based code using this popular editing tool.

In just seven quick steps, you can install VS Code and its Code for IBM i extension and begin working with IFS files stored on your IBM i.

Read more

PHP 8.2 for IBM i Now Available — PHP 7.4 Frozen

PHP on IBM iIt’s time to upgrade your PHP! If it seems like you just heard this from us, you’re not wrong.

By gradually deprecating features and techniques that no longer represent best practices, PHP nudges developers to keep their applications current, ready to address new business needs.

Read more

Be Careful When Using Yum Remove

Open SourceThe Yum install command installs open source packages. It also installs any sub-packages upon which the desired package relies.

Yum remove does the reverse. It will remove a requested package.

What some users don’t know: Yum remove also removes any packages that depend on the package you removed. This is true whether running Yum manually or via the ACS open source package manager.

Read more

Apache for IBM i: Where to Find Documentation

Apache HTTP Server ProjectHTTP Server for i (Powered by Apache) is the IBM i integrated web server. Although this unique implementation of Apache is well documented by IBM, that documentation can be hard to find. Internet searches often return outdated or irrelevant links.

Read more

Using Yum to Install or Update the IBM i ODBC Driver

ODBC with Db2 for IBM iThe IBM i ODBC driver for Db2 has become easier to install.

Formerly available only as a download requiring several steps, the driver can now be installed and updated on IBM i with Yum or Access Client Solutions (ACS), as easily as with other IBM i open source packages.

Here are instructions for installing the ODBC driver using Yum.

Read more

Continuous Integration for PHP Extensions

(Co-written with Alan Seiden)

CI/CDContinuous Integration (CI) ensures that every time a developer commits changes to a version control system such as Git, the code is automatically built and subjected to automated tests.

CI has been invaluable to us. As maintainers of PHP’s PDO_IBM and ibm_db2 extensions, we use CI to ensure high quality across platforms.

Platforms supported by PHP’s extensions for Db2 include IBM i, Unix/Linux, and Windows. While our focus is IBM i, we must ensure compatibility with the others. Reliance on manual testing would introduce the risk of broken builds or subtle bugs. Automation is a must.

In this post, we explain how we use CI principles when building and testing PHP’s Db2 extensions.

Read more