


How do I use platform requirements to specify required PHP extensions?
Jul 05, 2025 am 12:39 AMThe way to define the required extension in a PHP project is through the config.platform object of composer.json. The specific steps are: open the composer.json file; add or locate the config.platform object; list the required extension and its minimum version (or use to represent any version). For example: "php": "8.1", "ext-curl": "", "ext-gd": "2.0", "ext-mbstring": "*". Platform requirements are suitable for deployment to restricted environments, ensuring environmental consistency, relying on specific PHP functions, etc. Pay attention to distinguishing require from config.platform to avoid missing extensions or incorrect configuration versions. Proper settings can effectively prevent runtime errors and improve deployment reliability.
When setting up a PHP project, especially one that needs to run in specific environments like shared hosting or certain cloud platforms, you'll often need to define which PHP extensions are required. The best way to do this is through the composer.json
file using the platform configuration under the config section.
What Are Platform Requirements and Why Use Them?
Platform requirements let you tell Composer (and anyone installing your project) which versions of PHP and its extensions are needed. This is especially useful when deploying applications where the server environment might not have all extensions enabled by default.
Instead of assuming the system running your code has, say, ext-curl
available, you can enforce it — Composer will warn or fail during installation if the requirement isn't met.
How to Define Required Extensions
To specify required PHP extensions:
- Open your
composer.json
file. - Add a
config.platform
object if it doesn't already exist. - Under
config.platform
, list each extension with the minimum version required (or*
if any version works).
Here's an example:
{ "config": { "platform": { "php": "8.1", "ext-curl": "*", "ext-gd": "2.0", "ext-mbstring": "*" } } }
This tells Composer that your app requires PHP 8.1, and that it must have curl, gd (version 2.0 or higher), and mbstring extensions enabled.
Pro tip: You don't always need to set every extension here unless it's critical for your app to run. Overloading platform settings can make installs more fragment on limited environments.
When Should You Use Platform Requirements?
You should use them in these situations:
- Deploying to a restricted or managed host (like shared hosting or PaaS providers).
- Ensuring consistency across dev, staging, and production environments.
- If your app uses features from newer PHP versions or relies on specific extensions.
If you're developing locally and not sharing or deploying your code elsewhere, you may not need to set these — but as soon as others or other systems will be installing your package, it's worth doing.
Common Pitfalls and Tips
Sometimes, people confuse require
with config.platform
. Here's the difference:
-
"require"
lists PHP packages your app depends on. -
"config.platform"
defines what's already installed on the system (PHP version and loaded extensions).
If you forget to include an extension in config.platform
, Composer might install a package that assumes the extension exists — leading to runtime errors later.
Also, some developers mistakenly write "ext-name": "true"
instead of "*"
. Stick to *
for most cases — it means "any version is acceptable as long as it's present."
Final Thoughts
Using platform requirements in composer.json
is straightforward and helps avoid deployment surprises. Just list the extensions and PHP version your app really needs, and Composer will help enforce that.
Basically that's it.
The above is the detailed content of How do I use platform requirements to specify required PHP extensions?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

You can check which extensions are used by PHP by viewing the phpinfo() function output, using command line tools, and checking the PHP configuration file. 1. View the phpinfo() function output, create a simple PHP script, save this script as phpinfo.php, and upload it to your web server. Access this file in the browser and use the browser's search function. Just look for the keyword "extension" or "extension_loaded" on the page to find information about the extension.

How to use PHP to extend PDO to connect to Oracle database Introduction: PHP is a very popular server-side programming language, and Oracle is a commonly used relational database management system. This article will introduce how to use PHP extension PDO (PHPDataObjects) to connect to Oracle database. 1. Install the PDO_OCI extension. To connect to the Oracle database, you first need to install the PDO_OCI extension. Here are the steps to install the PDO_OCI extension: Make sure

PHP is a popular server-side scripting language that can handle dynamic content on web pages. The geoip extension for PHP allows you to get information about the user's location in PHP. In this article, we’ll cover how to use PHP’s geoip extension. What is the GeoIP extension for PHP? The geoip extension for PHP is a free, open source extension that allows you to obtain data about IP addresses and location information. This extension can be used with the GeoIP database, a database developed by MaxMin

How to use PHP to extend the report generation function of SuiteCRM SuiteCRM is a powerful open source CRM system that provides rich functions to help enterprises manage customer relationships. One of the important functions is report generation. Using reports can help enterprises better understand their business situations and make correct decisions. This article will introduce how to use PHP to extend the report generation function of SuiteCRM and provide relevant code examples. Before starting, you need to make sure that SuiteCRM is installed.

When developing with PHP, we may need to use some PHP extensions. These extensions can provide us with more functions and tools, making our development work more efficient and convenient. But before using these extensions, we need to install them first. This article will introduce you to how to install PHP extensions. 1. What is a PHP extension? PHP extensions refer to components that provide additional functionality and services to the PHP programming language. These components can be installed and used through PHP's extension mechanism. PHP extension can help us with

Complete Guide: How to Read and Process XML Data Using PHP Extension SimpleXML Introduction: In modern web development, processing and manipulating XML data is a very common task. As a powerful server-side scripting language, PHP provides a variety of extensions and functions for processing and manipulating XML data. Among them, the SimpleXML extension is a particularly useful tool that simplifies the process of reading and processing XML data. This article will provide you with a complete guide on how to use PHP extensions

Pagoda Panel is an open source server management panel. While providing website operators with convenient website management, database management, SSL certificate management and other services, it also provides powerful PHP extension and PHP version management functions, making server management easier. Be more simple and efficient. 1. PHP extension PHP extension is a module used to enhance PHP functions. By installing PHP extensions, more functions and services can be implemented, such as: accelerator: accelerator can significantly improve PHP performance, and reduce service load by caching PHP scripts.

PHP extension development is the art of creating custom functionality, extending PHP core functionality and building more powerful applications. It opens up new possibilities in the PHP world, allowing developers to transcend the basic limitations of the language. This article will take you on a journey of PHP extension development, providing you with comprehensive knowledge and practical guidance from basic concepts to advanced techniques. PHP extension development basics Before starting PHP extension development, you need to understand some basic concepts. What are PHP extensions? A PHP extension is a dynamic link library (DLL) that extends PHP core functionality and provides new data types, functions and classes. Advantages of PHP Extensions PHP extensions have many advantages, including: scalability, flexibility, performance optimization, and code reuse. PHP
