Software-update: PhpStorm 2017.3

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 ondersteunt php versies 5.3, 5.4, 5.5, 5.6, 7.0 en 7.1. Het biedt on-the-fly-errorpreventie, autocompletion, code refactoring, debugging en kan ook overweg met html, css, coffee- en javascript. Voor een overzicht van de mogelijkheden verwijzen we jullie door naar deze pagina. Voor het gebruik van PhpStorm is wel een licentie nodig, voor zakelijk- en thuisgebruik zal je daar voor moeten betalen maar wanneer het gebruikt wordt voor onderwijs of niet-commerciële opensourceprojecten is de licentie gratis. JetBrains heeft PhpStorm 2017.3 uitgebracht met de volgende verbeteringen:

What’s New in PhpStorm 2017.3

Editor-based REST client
  • New REST client interface - With the new REST client, all the powers of the PhpStorm code editor are now available for your REST requests. Use code completion to assist you with composing a request, apply refactorings to it, store the request as part of the project and add it to VCS, execute the request, and examine server responses – all without leaving the code editor.
  • Support for environment variables - Define environment variables to hold the values specific for your working environment, for example, the names of your development and production hosts. When composing a REST request, you can substitute its part with a variable to keep a single request suitable for multiple purposes.
  • Compare your requests - The diff viewer now handles server responses. If you want to see how your changes affect the response, simply execute a REST request several times. Then, pick a pair of results, invoke the diff viewer right from the code editor, and examine the differences.
PHP Language
  • Performance Improvements - We’ve been working hard on performance improvements in this release. As a result, typing latency in very complex PHP files has decreased significantly. We’ve examined typing latency in the mPDF main file, which is a 38k-line-long mix of PHP, JS, and HTML, and it is down by 75% in PhpStorm 2017.3!
  • Support for nullability in refactoring - PhpStorm 2017.3 brings nullability support introduced in PHP 7.1, which is now available for the Extract Interface and Change Signature refactorings. It will help you avoid omitting the type declaration, or providing the default null value for the function parameter when you really want to pass or return null. PhpStorm will now preserve nullability when you apply Extract Interface and will no longer signal an error when it detects a nullable type while applying Change Signature.
  • Improved code templates - To simplify the creation of classes in namespaced code, the New PHP Class dialog now lets you select a custom PHP file template. Use the ${NAMESPACE} variable in your template and take advantage of namespace completion and PSR-0 / PSR-4 namespace detection as you create the class. You can also specify the day, year, and month in any PHPDoc template, not just in file templates.
Bring exceptions under control
  • Unhandled exception - The new Unhandled exception inspection reports exceptions that are neither enclosed in a try-catch block nor documented using a @throws tag. The inspection helps you find all the places in your code where thrown exceptions would lead to a Fatal Error. Accordingly, you can resolve such issues by using quick-fixes like Add @throws tag and Surround with try/catch.
  • Redundant @throws tag - Ever forget to update your PHPDoc after refactoring your code? We’ve added the new Redundant @throws tag inspection, and the corresponding Remove @throws tag and Update PHPDoc quick-fixes will now help you clean up your PHPDoc.
  • Redundant catch clause - The new Redundant catch clause inspection and the corresponding Delete catch clause quick-fix will let you know when the exception you are trying to catch is actually never thrown and therefore your catch block is redundant.
Testing
  • Create new Codeception and PHPSpec test - The Create New PHP Test dialog adds new templates for the Codeception Unit, Codeception Functional, and PHPSpec test types so you can create new Codeception and PHPSpec tests with more ease.
  • Test method generation - No more manual creation of test methods! Use the brand new method selector in the Create New PHP Test dialog instead. Simply select all or just a couple of class methods for which you’re going to provide tests, and PhpStorm will generate the test class and the test methods stubs for you. Templates for all supported frameworks are provided to cover your needs for generating project-specific code.
  • Rerun of PHPUnit test with specific dataset - In PhpStorm 2017.3, you can rerun a failed PHPUnit test with specific dataset. If you have a test method that uses the data provider and only one of the data sets fails, you don’t have to re-run the entire test anymore. Simply choose a specific data set from the previous test run and Run/Debug it again.
  • Undefined PHPUnit data provider - PhpStorm 2017.3 introduces the Undefined PHPUnit data provider inspection, which indicates a @dataProvider method that’s not found in unit tests. You can then easily create the missing method by applying the suggested Create data provider quick-fix.
Twig support
  • Injections in Twig templates - We’ve implemented language injections for Twig custom tags and named blocks. You can inject a language into the named block or between custom tags. You can also create permanent injection rules.
  • Improved Twig formatting - PhpStorm 2017.3 brings improved Twig formatting that can now handle complex structures and provide correct indentation for them.
Web Technologies Support
  • Improvements in Vue.js support - This update brings lots of improvements to PhpStorm’s support for Vue.js! Code completion and navigation to the definition now work for Vue props, properties in the data object, computed properties, and methods. Closing curly braces are now added automatically in Vue templates. We've also added a collection of code snippets for Vue. These code templates can help you save time typing some frequently used blocks of code. With a new Vue file template, you can also create new components faster.
  • Better code completion and documentation for JavaScript - Code completion and parameter info for the standard JavaScript objects and methods and Web APIs has improved, as these features are now powered by the TypeScript declaration files. The documentation available via F1 now also includes a brief description for methods, which either comes from the bundled definition files or is fetched from MDN.
  • New Pull Member Up refactoring - With the new refactoring you can now move class methods up the class hierarchy – from your current JavaScript or TypeScript class to its parent class or interface. Or if there’s no parent class yet, you can extract fields and methods to a superclass using the new Extract superclass refactoring.
  • As usual, all the features and improvements of WebStorm are available in PhpStorm, either out of the box or with free plugins available in the repository. Other noteworthy web-related features include Extract type alias and Extract interface refactorings in TypeScript, multiple JavaScript versions in a project, improved Jest integration, better support for CSS, Import code style from ESLint and TSLint and other.
Version Control
  • Switch between branches preserves your workspace
  • Changelists can now be renamed in the Shelf tab
  • D'n'D between Shelf and Local Changes tabs
Database Tools
  • Improved Database view
  • SQL generator
  • JOIN statement completion
  • SSH tunneling
Other improvements:
  • Redesigned Code Style|PHP settings page
  • New Composer Log
  • Improved PHPUnit Run configuration
  • Define visibility for initialize fields intention
Versienummer 2017.3
Releasestatus Final
Besturingssystemen Windows 7, Linux, macOS, Windows 8, Windows 10
Website JetBrains
Download https://www.jetbrains.com/phpstorm/download/
Licentietype Freeware/Betaald

Door Japke Rosink

Meukposter

07-12-2017 • 19:55

9

Submitter: Bux666

Bron: JetBrains

Update-historie

Reacties (9)

9
9
6
0
0
3
Wijzig sortering
Ik prefereer PHPTools omdat mijn goto talen C# en PHP zijn en dus het liefst Visualstudio gebruik als editor. Fijner om 1 IDE te hebben dan tich, vind ik.
Ben benieuwd hoe PHPStorm zich verhoudt tot PHPTools
Heb je al eens gekeken naar visual studio code?
Dat is geen 'echte' IDE, maar een editor. Tuurlijk, met de juiste zwik plugins wel tot een soort IDE om te bouwen, maar in de kern blijft het een editor.

Wat overigens geen slecht iets is. Ik gebruik zelf PhpStorm en VSC naast elkaar, de ene voor de (grotere) projecten, de andere voor quick edits in losse files.
Hoewel phpstorm zeker voordelen heeft heb ik toch gekozen om op andere tools die beter in mij workflow passen te kiezen. Visual studio code is een mooie oplossing (en daarvoor Sublime text) al is het niet een volledige vervanging van phpstorm.

Zoek je een tool waar veel in 1 zit dan zit je met phpstorm goed. Merk alleen zelf dat ik liever losse programmas heb.
Los van de discussie wat nou de beste PHP editor (voor jou) is, voor degenen die PHPStorm al gebruiken kan ik deze update van harte aanraden.
De performance winst benadert echt de 75% die ze zelf claimen. Voor mij zijn nu (erg) complexe en grote bestanden wel fatsoenlijk te bewerken op m'n laptop...
Ik ben wel benieuwd naar de reden van 38k lines tellende files. Is de echte oplossing namelijk niet het opsplitsen van dat bestand? . Kan me wel nog voorstellen dat het gaat om compiled en concatted files.
Dat zijn inderdaad meestal geen normale "applicatie-bestanden".
In mijn geval ben ik bezig met het vertalen van een applicatie waarbij ik alle labels en variabelen in 1 tijdelijk bestand wegschrijf. Daar kan ik vervolgens in 1 keer alle benodigde bewerkingen op loslaten. Uiteindelijk komt alles weer in de losse kleine files te staan.
Maar het kan ook wel 's voorkomen dat configuratie bestanden groot zijn. Of inderdaad het debuggen van gecompileerde of geconcateneerde bestanden.
Mijn bestand was trouwens "maar" 1k, met dus al erg veel performance winst.
Dank voor je uitleg. Ik maak weleens mee dat Gulp bestanden 4k lines hebben en nauwelijks te bewerken zijn. Ga dot zeker eens proberen met de nieuwe versie.
Jetbrains houdt er altijd wel van features toe te voegen, maar het gemis aan veel echt nieuwe features geeft toch wel aan dat het al redelijk compleet nu is. Ik vind het iig een goede IDE.

Op dit item kan niet meer gereageerd worden.