Troubleshooting: Resolving PHP Is Not Recognized as an Internal or External Command Error

If you're a developer working with PHP, you may encounter the error message "PHP is not recognized as an internal or external command" when trying to execute PHP commands in your terminal or command prompt. This guide will walk you through the process of resolving this issue and get you back to developing your PHP applications in no time.

Table of Contents

  1. Understanding the Error
  2. Adding PHP to Your System's PATH
  1. Verifying the Solution
  2. FAQ

Understanding the Error

The "PHP is not recognized as an internal or external command" error occurs when your system does not recognize PHP commands. This is typically because PHP has not been added to your system's PATH variable. The PATH variable contains a list of directories where your system looks for executables when you enter a command in the terminal or command prompt.

Learn more about the PATH variable

Adding PHP to Your System's PATH

To resolve the error, we need to add the PHP executable's directory to your system's PATH. Follow the instructions for your operating system below.

For Windows Users

Locate your PHP installation folder. It is usually found in a directory similar to C:\xampp\php or C:\wamp\bin\php\php{version}.

Right-click on "My Computer" or "This PC" and click on "Properties."

Click on "Advanced system settings" and then click the "Environment Variables" button.

In the "System variables" section, scroll down and find the "Path" variable. Click on it and then click the "Edit" button.

In the "Edit environment variable" window, click the "New" button and then paste the path to your PHP installation folder.

Click "OK" to save your changes and close all the open windows.

Detailed instructions for Windows users

For macOS and Linux Users

Open your terminal.

To edit the PATH variable, open the .bash_profile, .bashrc, or .zshrc file located in your user's home directory using your preferred text editor. For example, you can use the nano text editor by entering the following command:

nano ~/.bash_profile
  1. Add the following line to the file, replacing /path/to/php with the actual path to your PHP executable:
export PATH=$PATH:/path/to/php

Save the file and exit the editor.

To apply the changes, restart your terminal or run the following command:

source ~/.bash_profile

Detailed instructions for macOS and Linux users

Verifying the Solution

To verify that the solution works, open your terminal or command prompt and run the following command:

php -v

If the command returns the PHP version installed on your system, you've successfully resolved the error.


1. What causes the "PHP is not recognized as an internal or external command" error?

The error occurs when PHP is not added to your system's PATH variable. Your system is unable to locate the PHP executable when you enter a PHP command in the terminal or command prompt.

2. How do I find the path to my PHP installation?

For Windows users, PHP is typically installed in a directory like C:\xampp\php or C:\wamp\bin\php\php{version}. For macOS and Linux users, the PHP executable is usually found in the /usr/local/bin or /usr/bin directory.

3. I've added PHP to my PATH variable, but I'm still getting the error. What should I do?

First, check that the PHP executable's directory was added correctly to your PATH variable. If the error persists, try restarting your terminal or command prompt. If the issue still isn't resolved, consider reinstalling PHP on your system.

4. Can I use a different editor to modify my .bash_profile or .bashrc file?

Yes, you can use any text editor you prefer, such as Vim, Emacs, or Visual Studio Code. Just make sure to open the file with the appropriate permissions and apply the changes by restarting your terminal or running the source command.

5. Do I need to add PHP to the PATH variable on a shared hosting environment?

In most shared hosting environments, PHP is already added to the PATH variable by the hosting provider. However, if you encounter the error on a shared hosting environment, you may need to contact your hosting provider for assistance.

Learn more about PHP on shared hosting

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.