Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I correct syntax highlight in VS Code for PHP 8.1 Enum Class?

My Code:

namespace App\Enum;

enum HomeStatus: string
{
    case RENT = 'rent';
    case MOVE_IN = 'move_in';
    case SOLD = 'sold';
    case COMING_SOON = 'coming_soon';
}

The code above is executing and working but the editor has the following error:

Unexpected 'Name'. Expected ';'.intelephense(1001)

I am using Intelephense v1.8.0 which I believe is the latest.

In the Change Log it says:

PHP 8.1 is now the default version.

I'm thinking that either that's not the case or PHP 8.1 does not yet have support for enums.

Is there a way to resolve this or is this something that is not yet supported?

EDIT As requested here's a screenshot of the error.

enter image description here

like image 504
Kevin Pimentel Avatar asked Jan 25 '26 23:01

Kevin Pimentel


2 Answers

Open Visual Studio Code settings and ensure the intelephense.environment.phpVersion directive is set to "8.1.0" or greater. It can be set for the whole program or for specific projects.

intelephense.environment.phpVersion

{
    "intelephense.environment.phpVersion": "8.1.0"
}
like image 82
Álvaro González Avatar answered Jan 27 '26 13:01

Álvaro González


For me, Alvaro's solution was only half of the fix. I also had to update this setting to point to my PHP executable.

{
"php.validate.executablePath": "C://laragon//bin//php//php-8.1.3-Win32-vs16-x64//php.exe"
}
like image 32
Bennett Avatar answered Jan 27 '26 13:01

Bennett