How can I set the PHP version in PHPStorm?

So, you mean to highlight all pieces of code that will not work with the PHP version you are writing it in, right? That can be done here:

Preferences -> Languages & Frameworks > PHP

and the same on Mac:

PhpStorm -> Preferences (⌘,) -> Languages & Frameworks > PHP

Or with newer versions of PhpStorm in Windows:

File -> Settings -> Languages & Frameworks > PHP

Sample dialogbox for mentioned prefrences

then select your PHP version, for example, 7.0

This is very useful when your local system runs PHP 7.0, for example, but production is running PHP 5.5.

That way PhpStorm will warn you which parts will not work in production, show proper hints during writing code according to the selected version, etc.


In case your field is disabled.

Probably your settings "Synchronize IDE settings with composer.json" is enabled

You may change your PHP version in composer.json file

"require": {
    "php": ">=7.1.0",
}

OR disable your settings in this path

File -> Settings -> Languages & Frameworks > PHP > Composer

*If you change your composer.json file - As Félix Gagnon-Grenier commented, Keep in mind it has effects on the way packages will be required later


You can use Alejandro Moreno's answer, but sometimes you might not be able to change PHP level from closed dropdown.

You can disable "Synchronize IDE settings with composer.json" checkbox from:

File -> Setting -> Languages & Frameworks -> PHP -> Composer

And after applying again open

File -> Settings -> Languages & Frameworks -> PHP

Here You can change PHP level from opened dropdown.


Open the Settings dialog box by choosing File | Settings, then click PHP under Languages & Frameworks. The PHP page opens.

Screenshot of the PHP settings

Now you can do 2 things:

  1. On the PHP page that opens you can set the "PHP Language Level".
  2. You can install the PHP version that you wish locally by, for example, installing packages like wamp or xamp and then set the interpreter of your PHP on the PHP page that you opened. More info here

My composer PHP version is synchronized to the phpstorm , so to explicitly choose the php language level from the setting, check that the option in the picture bellow is disabled.

enter image description here