JetBrains brengt verschillende ontwikkelomgevingen uit, zoals IntelliJ Idea gericht op Java, CLion gericht op C en C++, DataGrip gericht op sql en PhpStorm gericht op php. PhpStorm biedt on-the-fly-errorpreventie, autocompletion, coderefactoring en debugging, en kan ook overweg met html, css, Coffee- en JavaScript. Voor een overzicht van de mogelijkheden verwijzen we naar deze pagina. Voor het gebruik van PhpStorm is wel een licentie nodig. Voor zakelijk en thuisgebruik zul je daarvoor moeten betalen, maar als de software wordt gebruikt voor onderwijs of niet-commerciële opensourceprojecten, is de licentie gratis. JetBrains heeft PhpStorm 2018.3.1 uitgebracht, met de volgende aankondiging:
PhpStorm 2018.3.1 is released
PhpStorm 2018.3.1 build 183.4588.67 is now available! In the first update for the recently released PhpStorm 2018.3, we are happy to bring you new features including support for custom string format functions and improved handling of @internal annotations. The release also has some bug fixes and improvements for PHP and the Web, and takes on the latest improvements in IntelliJ Platform.
Support for custom string format functions
In PhpStorm 2018.3, we improved the way sprintf() and printf() functions are handled – their parameters and placeholders under the caret are highlighted. In this update, we are taking another step forward: you can now define your own custom string formatting functions, and PhpStorm will apply appropriate highlighting to them, too. To add custom formatting functions, go to Settings / Preferences | Languages & Frameworks | PHP | Analysis. There, expand the Custom Format Functions node and add a new item. You can add both class methods and plain functions, and PhpStorm will provide you with code completion in both cases. Then, specify the index of the argument where your formatting template resides. That’s it: apply your changes, and your custom formatting function will be included in the analysis.
Improved @internal annotation handling
In this update, we’ve improved the behavior of the Usage of internal entity inspection, which handles @internal annotations. Previously, marking a class as internal would result in all class usages marked as internal, too. Now, since @internal commonly denotes elements internal to a package or a library, the inspection takes your actual project structure into account:To learn more about working with content roots, refer to PhpStorm help.
- In a project with no source roots, no @internal class usages will be marked.
- If a source root is configured and the @internal class is located inside it, the usages inside this source root won’t be marked, but usages outside this source root will be marked.
- If the @internal class is located inside a library, all its usages outside libraries will be marked.
- In a Test Sources root, no @internal elements’ usages will be marked.
This update also brings notable bug fixes and features worth mentioning:See the full list of bug-fixes and improvements in the release notes.
- Fixed: Macro multiple $Prompt$ in External Tools (IDEA-129070 +22)
- Fixed: “Close session” and “Select Next/Previous Tab” no longer works in terminal since latest build (IDEA-200854 +18)
- Fixed: In anonymous classes constructor arguments are treated like anonymous class scope instead of outer scope (WI-34498 +15)
- Fixed: Unused private method not detected when recursion (WI-17810 +14)
- Added: Code completion for Vue.js instance methods and properties (WEB-28529 +10)
- Fixed: Opening Embedded Terminal starts with: “cp: overwrite … ” (IDEA-202523 +8)
- Fixed: Start ssh session is broken in 183.3795.24 (IDEA-203045 +8)
- Fixed: Extract Method Refactoring: add parameter’s type if variable’s type is known (WI-15860 +8)
- Fixed: PHP Array Constants – Expression is not allowed as field default value (WI-37537 +5)