DEV Community

Ngobrolin IT
Ngobrolin IT

Posted on

68

Prettier for PHP File Formats in VSCode

Hello, dev đź‘‹

If you are a programmer in the PHP language, of course, you want to make your coding look neat so that it is easy for other programmers to read. In VS Code there is an extension to automatically tidy up coding called Prettier.

But it turns out that by default Prettier does not support PHP formatting language. Although there is a PHP plugin for Prettier created by the community. You can just read the Use section on the GitHub page to see how to use the plugin together with Prettier to format the PHP language. In my opinion, this method is quite complicated because it would be easier if the formatting was executed when the PHP file was saved (formatOnSave).

PHP Intelephense

To format the PHP language, I suggest you use the VSCode extension called PHP Intelephense which was created by Ben Mewburn. Install the extension first.

After the extension is installed, you can go to File -> Preferences -> Settings, then look for "default formatter"

VSCode Default Formatter

Then change the Default Formatter to PHP Intelephense. Still in settings, look for "formatonsave" and then check Format On Save so that our PHP file is formatted automatically when saving the file.

Multiple Formatter

Now this becomes confusing when we also work in languages other than PHP, such as Javascript, Typescript, or other programming languages.

When we choose the Default Formatter to PHP Intelephense, this means that all files will be formatted using PHP Intelephense, while this extension only supports PHP. Then, how?

The solution is to use the settings.json configuration file in VSCode to set the PHP language using PHP Intelephense.

Now go to settings and change Default Formatter to Prettier. Why Prettier? Prettier itself supports quite a lot of languages such as JavaScript, TypeScript, JSX, Angular, Vue, CSS, HTML, JSON, GraphQL, and others.

Then you create settings.json using Ctrl + Shift + P then search for "open user settings". Select the (JSON) one. Then the settings.json file will open. So here add the following configuration:

"[php]": {
    "editor.defaultFormatter": "bmewburn.vscode-intelephense-client"
}
Enter fullscreen mode Exit fullscreen mode

This means that all files with the .php extension will be formatted using the PHP Intelephense extension. Don’t forget to save the settings.json.

Good luck 🍻

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more

Top comments (4)

Collapse
 
shaz3e profile image
Shahrukh A. Khan •

I followed instructions very carefully and it works thanks for the efforts.

Collapse
 
yorsh21 profile image
Jorge Villagrán •

Works for me, thanks :)

Collapse
 
foisal profile image
Md Foisal •

not work.

Collapse
 
ngobrolinit profile image
Ngobrolin IT •

actually, this method will format your PHP file using the PHP Intelephense extension, but I combined it with Prettier to format languages other than PHP. Please read every step carefully. I hope it works.

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

đź‘‹ Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay