Current Location: Home> Latest Articles> Complete Guide to Installing and Configuring PHP pthreads v3 on CentOS 7

Complete Guide to Installing and Configuring PHP pthreads v3 on CentOS 7

gitbox 2025-08-02

Introduction to PHP pthreads Extension

PHP is a widely used scripting language in web development, offering numerous extensions to meet various functional needs. pthreads is an extension that enables multithreading in PHP scripts, allowing concurrent execution and improving program efficiency. This article explains how to install and configure the pthreads v3 extension on the CentOS 7 platform.

Preparation Before Installation

Before installing the pthreads extension, ensure PHP and its development package are installed on your system. Skip this step if already installed.

sudo yum install php php-devel

Installing the pthreads Extension

The pthreads extension is installed via the PECL channel, so you need to install the php-pear package to use the pecl command.

sudo yum install php-pear

After installation, update the PECL channel and install pthreads:

sudo pecl channel-update pecl.php.net
sudo pecl install pthreads

When prompted during installation, enter 'y' to proceed.

Enabling the pthreads Extension

Once installed, enable the pthreads extension by adding the following line to the PHP configuration file php.ini:

extension=pthreads.so

If multiple PHP versions are installed, add this line to each php.ini file accordingly. To find the location of php.ini, run:

php -i | grep php.ini

After editing, restart your web server to apply changes.

sudo systemctl restart httpd

If using Nginx with php-fpm, restart with:

sudo systemctl restart php-fpm

Verifying pthreads Extension

Create a test script to verify the extension is working. Place a file named test-pthreads.php in the web server's root directory with the following content:

<?php
class TestThread extends Thread {
  public function run() {
    printf("Hello %s\n", $this->getThreadId());
  }
}

for ($i = 0; $i < 5; $i ++) {
  $thread = new TestThread();
  $thread->start();
}
?>

Access http://localhost/test-pthreads.php in your browser. If you see output similar to this, pthreads is installed correctly:

Hello 139899704440064
Hello 139899704410368
Hello 139899696771072
Hello 139899692574976
Hello 139899700068864

Conclusion

This article detailed how to install and configure the PHP pthreads v3 extension on CentOS 7. Setting up a multithreaded environment allows PHP applications to better utilize server resources, suitable for projects requiring enhanced performance. We hope this guide serves as a practical reference for your development environment setup.