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

ODBC Connection Strings for IBM i Db2

ODBC with Db2 for IBM iAs ODBC gains popularity for IBM i database access, developers of web applications and APIs need information on defining ODBC database connections. This article demonstrates tips and techniques for effectively using ODBC connection strings in all programming environments, including popular languages such as PHP, Python, and Node.js.

For an example of how connection strings are used in a program, see How to Query IBM i Data with PHP and PDO_ODBC.

Read more

How to Query IBM i Data with PHP and PDO_ODBC

ODBC & Db2 for iOf the PHP extensions that can connect to IBM i Db2, PDO_ODBC is the most flexible.

Although the classic extensions (ibm_db2, PDO_IBM) often provide the best performance and integration, PDO_ODBC does have several benefits:
Read more

Alan’s PHP Tips to Wow Your Users [VIDEO]

“The order entry app is hanging again!”  Nobody wins when your system is slow or stuck.

Find out how the best IBM i teams keep their users happy and productive with snappy PHP applications. In this video, Alan shares tips to optimize PHP websites and APIs for improved speed and stability. He explains why newer PHP versions are inherently faster and offer smoother migrations. He also details how to use Apache’s mod_deflate, look for network issues and bots, manage session clean-up, prepare for business growth, improve PHP Db2 performance, profile your application, and much more.

Read more

Does Our PHP API Need a Framework? A Q&A with Rob Allen

API To follow up on Rob Allen’s article about choosing a PHP framework for APIs, here is an edited discussion between Rob and a developer at a Seiden Group client regarding their new API.

In this discussion, Rob addresses common developer concerns about frameworks for APIs.

Read more