PhpStorm free download - Media Player Codec Pack, EditPlus, InstantStorm, and many more programs. First, download from the below link. Then Install the Setup. Copy the Key and paste it to the installed folder. After completing the process click on Active Button. JetBrains PhpStorm Crack 2021.1 License Key Free Download Link is given below! Download PhpStorm - A HTML, JavaScript and PHP integrated development environment (IDE) that provides developers with all the necessary tools for their work. Download PhpStorm - A HTML, JavaScript and PHP integrated development environment (IDE) that provides developers with all the necessary tools for their work. Downloads PhpStorm to a defined folder and creates a Symlink to the new version. It can also cleanup old PhpStorm versions in file. cmuench/phpstorm-downloader.
NewsNewsletterPhpStorm 2019.3 is now available!
This major release is focused on performance and quality, expect a more stable and faster IDE. It also brings full support for PHP 7.4, PSR-12 code style, WSL for remote interpreters, MongoDB support, HTTP Client updates, and many usability improvements!
In this blog post, we’ll provide a detailed overview of all the changes and things that you should know about this new version. It’s a combination of all the EAP blog posts that we’ve been publishing here over the past several months plus many other useful additions that have not yet been covered. Fasten your seat belts as we have a ton of GIFs for you!
Performance and Quality
Every release we dedicate a significant amount of time to performance and quality. But for this release, we went even further and held a full-blown quality-marathon. During this time the whole IntelliJ Platform team focused on polishing the IDE and making performance improvements. And we have achieved the following results:
- Faster IDE startup
- Better UI responsiveness
- Reduced memory consumption
Depending on your platform, you should see much faster IDE loading. Because we parallelized some of the processes that used to run sequentially, we reorganized the classes in a way that makes the initial class loading faster, and much more.
We were able to resolve a number of issues that were responsible for over 1600 reports of UI freezes.
There are performance optimizations in the Version Control subsystem too. We’ve managed to revamp the processing of events and the handling of ignored files. There are fewer freezes and faster status updates in large projects.
We plan to continue working on this, so you can expect even faster startup and more optimizations to come in the next few releases.
PHP 7.4
PHP 7.4 is now released! It has so many cool things on board. Just check out the new features there. All of them are supported in PhpStorm 2019.3.
Typed Properties
This is probably the most anticipated feature of PHP 7.4. PhpStorm has supported it since 2019.2. Let’s take another look at it, as in this release we’ve fixed a few issues with it and covered some corner cases.
First of all, PhpStorm will, of course, highlight type violations:
It is more likely than not that you will want to quickly add type declarations for your properties. This should be quick as PhpStorm can detect the type of the existing properties based on the PHPDoc, default value, or if you have a defined type when you injected the value into the constructor.
Anyway, you can press Alt+Enter on a property without a type, and then choose Add declared type for the field and that’s it, it’s done.
Arrow Functions
If you have an anonymous function with a single statement in the body, in PHP 7.4, you can now convert it to a short arrow function: fn(parameter_list) => expr
And there is no need to write use
section as it has an automatic by-value binding of outer scope variables:
Press Alt+Enter on the anonymous function and use Convert closure to arrow function option:
Numeric Literal Separator
You can now add underscore symbols anywhere in the numbers to visually format them. Press Alt+Enter on any number and apply Add number separators. This will add an underscore ‘_
‘ after every third digit for decimal numbers, or every fourth digit in hex, binary, and octal.
Nested Ternary Operator
Almost all programming languages compute the ternary operator from right to left. PHP did it differently, which was counterintuitive and could lead to mistakes. Now, PHP 7.4 deprecates left associativity. This means that you either should not be using nested ternaries at all, or if you have to, then you should use parentheses to explicitly declare the order of computation.
PhpStorm 2019.3 highlights deprecated expressions, and you can use a quick-fix (Alt+Enter – you know, right?) to clarify the behavior.
New Serialization Mechanism
As the issues with existing serialization were not fixable, the PHP core team decided to introduce two new magic methods __serialize()
and __unserialize().
PhpStorm will help find usages of those methods in the code:
Covariant Returns and Contravariant Parameters
PHP 7.4 fixes multiple inconsistencies, and one of them relates to the type system. When you work with a method inherited from a parent class, it will now be possible to define a more specific return type, and less specific parameter types for it.
Deprecations
The good thing about PHP releases is that they not only add new features but also deprecate old ones, making the language cleaner and more pleasant to work with. The PHP 7.4 release comes with a whole bunch of deprecations.
PhpStorm 2019.3 highlights code pieces that need your attention. Where possible, you’ll have an option to quick-fix the deprecated behavior automatically.
⚠️ With the PHP 7.4 release, older versions of PHP are going to be abandoned. PHP 7.2 goes into security-fixes-only for one more year. PHP 7.1 is now officially not supported. This means that if a vulnerability is now found, there will never be a fix for it and getting hacked is just a matter of time. Get ready to upgrade.
PSR-12
This new PSR-12 standard supersedes the dear old PSR-2, adapting it to all the new language features that we’ve been given in the last years, and cleaning up a few inconsistencies. Kudos to PHP-FIG for this great update! If you’ve been using PSR-2, check out what has changed in PSR-12.
PhpStorm 2019.3 comes with a predefined PSR-12 code style, and the IDE will suggest that you switch to it. You can also always switch to it manually with the Set from… action under Preferences | Editor | Code Style | PHP:
Some PSR-12 rules are added as inspections which are off by default, but PhpStorm suggests to turn on the inspection when you choose the PSR-12 code style. You can adjust the inspections as you like, under Preferences | Editor | Inspections in PHP | Code Style | PSR-12:
After this, you can reformat code in the editor by pressing Cmd/Ctrl+Alt+L:
Or you can have PhpStorm run it automatically on the cleanup stage before a commit:
WSL
PhpStorm will now support developing in a WSL (Windows Subsystem for Linux) environment, which is when you have launched your IDE on a Windows 10 machine, but you target WSL/Linux in your development. You’ll be able to specify a remote PHP interpreter in the WSL and use it for running scripts, tests, Composer commands, and debugging.
- To get started, make sure you have installed the WSL on your Windows 10 machine, and the Linux distribution of your choice. See the installation guide.
- Depending on the distribution you may have PHP already preinstalled. If not, you’ll have to install it manually via the command line. For example in Ubuntu you can run something like this:
sudo apt update
sudo apt install php php-mbstring php-dom php-xml php-zip php-curl php-xdebug - When you have PHP in your WSL environment you’re ready to set up PhpStorm.
- Add a CLI interpreter under File | Settings | Languages & Frameworks | PHP
That’s all there is to it! Now you can specify this interpreter for running tests, Composer, or for any other run-configurations that you have.
PHPDoc Improvements
Traditionally in PhpStorm, you had resolving for FQNs and links in PHPDoc, but the whole block was displayed in one color and styled just like regular comments.
In PhpStorm 2019.3, doc blocks get full highlighting for all the types, variables, params, methods, and properties. If you have HTML in your comments, it will also be highlighted as such.
PHP Highlighting in Markdown and Strings
Sometimes you may need to use PHP inside a string literal. We hope it’s not in eval()
, but you get the point. Or maybe you want to get PHP highlighting in code blocks in Markdown files.
In PhpStorm 2019.3, you get all of these, thanks to a special PHP dialect called InjectablePHP. This dialect works similar to PHP, but the opening tag can be omitted.
It will be automatically injected in markdown fences with the info string equal to php
:
Heredoc/Nowdoc strings with PHP
marker:
Well, and in eval()
calls too:
Handy little improvements
Quick-fixes for conditions
The conditional if-else
statement is probably the most used construct in the language. So in PhpStorm 2019.3, we’ve added a few nice and quick actions to manipulate conditions.
If you have an assignment inside an if
statement, PhpStorm will suggest extracting it to a variable with Alt+Enter:
If you have nested if
conditions, it is now possible to quickly merge them into one with Alt+Enter:
You can merge else
followed by if
into a single elseif
:
Or you can do the opposite and split elseif
into else
and if
:
Inline constant refactoring
This refactoring is opposite to the Extract constant and it results in replacing constants occurances with value. Press Cmd/Ctrl+Alt+N on constant.
Discover many more refactotings by pressing Cmd/Ctrl+T.
Unwrap function argument (remove function call)
Press Shift+Cmd/Ctrl+Delete to remove redundant function call:
Auto-insert <?php when just <? is typed in
Short tags are likely to remain a part of PHP, at least for the next few years, as the last RFC vote did not pass.But PhpStorm can help you with deprecating short tags, by automatically inserting <?php
as soon as you type <?
:
Automatically complete ‘=’ to ‘=>’ after array key
There’s another little timesaver we’ve included in 2019.3. When you are adding an item into an array, and you type a key and then want to type =>
to specify a value, just press =
and PhpStorm will automatically insert =>
:
Other PHP-related updates
Specify the interpreter for PHP test run configurations
Previously, if you wanted to, let’s say, run tests in PhpStorm with a remote PHP interpreter, you had to create a separate run-configuration. In PhpStorm 2019.3, we’ve added interpreter option for any php run-configurations, so you can choose any interpreter that you have to run your tests with. Feel free to use Docker, Vagrant, or any other remote interpreter too.
Fonts & colors for $this variable
HTTP Client
Editor Toolbar
Whenever you open an .http
or .rest
file, you have a toolbar with quick access to common actions:
Run All Requests in File
With the editor-based HTTP Client in PhpStorm, you can write multiple requests in one .http
file by separating them with ###
. This is quite convenient if you need to do request chains when one request depends on the result from previous ones.
Earlier, you had to run each request one by one, now in PhpStorm 2019.3 you can run them all at the same time.
Folding requests
If you are sending a request with a long body, for example, multipart form data or maybe many headers, you may want to fold it to reduce noise in the editor.
You can fold the whole request leaving the first line, or only the body part:
Completion for hosts
When composing a new request, you no longer need to type the hostname you used earlier. PhpStorm will offer you a list of hostnames in the suggestion list:
Dynamic variables
We’ve added three dynamic variables that you can use anywhere in the requests:
$uuid
– Generates a new UUID-v4 (e9e87c05-82eb-4522-bc47-f0fcfdde4cab)$timestamp
– Current Unix timestamp (1563362218)$randomInt
– A random integer between 0 and 1000
Use double curly brackets to insert one of these variables where needed:GET http://httpbin.org/anything?id={{$uuid}}&ts={{$timestamp}}
See all the essentials you need to know in the video overview of
HTTP Client in PhpStorm.
Version Control
Reworked UI for cloning projects
Now you can log into GitHub from this dialog, or if you’re already logged in, the IDE will instantly preview lists of all the repositories which will be grouped by accounts or organizations.
Checkout
We’ve removed the Checkout as action and introduced 2 new separate actions instead: New Branch from Selected and Checkout. The new New Branch from Selected action creates a new branch and doesn’t set tracking. The Checkout action silently creates a new local branch, checks it out, and sets tracking of the selected remote branch if there is no local branch with the same name.
Push any branch
You can now push changes from any branch without switching to it. In the VCS | Branches popup – select a branch and then use the Push action from the menu.
Date format customization
You can configure the date format for VCS Annotate and VCS Log actions. For example, you can set it to mm/dd/yyyy
if you want to use the US format.
IDE
Better plugin management
PhpStorm has lots of incredible plugins that you can install to extend its functionality and customize its appearance. Managing plugins was a bit of a hassle, as it required restarting the IDE each time. We’ve addressed this issue in PhpStorm 2019.3 by implementing core underlying infrastructure – support for dynamic plugin installation. This basically means that the IDE can now load and unload plugins without restarting. It is currently enabled for the theme and keymap plugins. In future releases, we plan to extend this to most plugins.
Contrast scrollbars
The scrollbar can now be made more visible thanks to the “Use contrast scrollbars” checkbox at Preferences/Settings | Appearance & Behavior | Appearance.
Smooth mouse scrolling
If the option Smooth scrolling is enabled under Preferences | Appearance & Behavior | Appearance, the entire interface will scroll smoothly instead of line by line when using a mouse wheel/touchpad.
Search within selected text
Select the code piece you need in the editor and invoke the Find action by pressing Cmd/Ctrl+F and the IDE will search only in the selected area. If you need to extend the search area and search throughout the whole file, press Cmd/Ctrl+F again, or alternatively toggle the In Selection option in the toolbar.
New editor command to sort lines alphabetically
Now you can easily sort lines alphabetically by selecting lines in the editor and choosing Edit | Sort Lines from the main menu or by running this action from Find Actions by pressing Cmd/Ctrl+Shift+A:
Web Technologies
See all the changes made by our colleagues from the WebStorm team on the What’s new in WebStorm 2019.3 page. Everything mentioned there is incorporated in PhpStorm 2019.3 as well.
Database Tools
MongoDB support
The day has finally come for us to start working on MongoDB support.
What actually works in this version:
Introspection
You can observe collections and fields in the database explorer. We fetch the first 10 documents from each collection to get information about the fields. This can be customized via the JDBC parameter fetch_documents_for_metainfo which is available in the Advanced tab of the data source properties dialog.
Data viewer
Open any collection or observe the query result and you have the option to sort by columns or filter the values, also paging works as well.
It’s also possible to explore data as a tree. To turn it on, click the Gear icon | View as… | Tree.
Query console
There is currently no coding assistance, but this doesn’t stop you from running queries and getting back the results. To run a statement, put the caret on it and run it via Cmd/Ctrl+Enter or by using the Play button on the toolbar.
Completion for queries will come later.
PhpStorm includes all the features of DataGrip out of the box, so there are many other new things to discover in DB tools. Stay tuned for a detailed overview of the DataGrip 2019.3 release.
A full list of all the changes in this release is available in the really long release notes.
That’s all for today. Thanks for reading till the end! Send us your questions, suggestions, bug reports, and just your thoughts in the comments.
Your JetBrains PhpStorm Team
The Drive to Develop
PhpStorm 2020.1 is now available!
This major release includes out-of-the-box composer.json support, code coverage with PCOV and PHPDBG, PHPUnit toolbox, new inspections, quick-fixes, and refactorings, advanced grammar checker, and many more benefits.
If you have only a few minutes, watch the What’s New in 2020.1 video above to get a rundown of the major enhancements. If you have more time to spare, read on for an overview of all the changes and things that you should know about this new version. Fasten your seat belts, though, as we have a ton of GIFs for you!
Out-of-the-box composer.json support
All dependency management actions are now available directly as you edit the composer.json file.
You can create a new file composer.json from the context menu or by pressing Ctrl(⌘)+N. The template of this file can be found in Preferences/Settings | Editor | File and Code Templates.
Add package as a dependency
To add a dependency, simply start typing a vendor and a package name, and PhpStorm will suggest appropriate options.
The version field will offer the available versions of this package. For now, you’ll have to add caret or other symbols for the version range manually, but in the next releases, we will implement this too.
Autocompletion will also work if you need to specify the required version of PHP and extensions.
In the popup for packages, you can find information from packagist.org about the number of downloads and stars. All the information about packages and their versions is taken from packagist.org and cached.
Install and update packages
If there is no composer.lock file and no packages are installed, PhpStorm will highlight the require
and the require-dev
section names. You can click the Install button in the toolbar above the editor. Or you can use the intention by pressing Alt(⌥)+Enter and choosing Install packages.
And if only some of the packages are downloaded, PhpStorm will highlight those that are not yet installed. By pressing Alt(⌥)+Enter over them you can choose Update package or Update all packages.
Next to the version requirement, the currently installed package version will be indicated in grey.
Navigate to files and folders
You probably know that with Ctrl(⌘)+Click or Ctrl(⌘)+B you can go to entity definition or search for usages.
In the composer.json it’ll work too. If you Ctrl(⌘)+Click a package, the corresponding directory will be highlighted in the Project Tree. And if it’s a file, then it will be opened in the editor.
Ctrl(⌘)+Click or Ctrl(⌘)+B on any link in the composer.json will open it in your browser.
Autocompletion in autoload(-dev)
Autocompletion works for namespaces and folder paths based on information from classes and directory structure of the project.
Ctrl(⌘)+Click and Ctrl(⌘)+B to navigate to files and folders also works here.
Improvements for scripts
First of all, navigation to files/folders/methods also works. Secondly, aliases for commands are supported. And third, scripts can be run from the editor by pressing the button near the script name.
This automatically creates a Run configuration. It means that you can re-run the script by a shortcut Ctrl(⌃)+R, which is quite convenient for debugging:
Code Quality Tools
If there is a FriendsOfPHP/PHP-CS-Fixer
in the dev dependencies, PhpStorm will check whether the corresponding inspection is enabled and if the ruleset is set. If not, you can call Alt(⌥)+Enter to fix it:
Improvements to PHP type inference
The type inference engine is the core of PhpStorm, and several noticeable changes were made to it.
Highlighting redundant @var tags
Adding @var tags is a good way to suggest PhpStorm the variable’s type. But since we are constantly improving the type inference, some of such declarations may well be redundant because PhpStorm already knows the type. Such cases will be highlighted and they can be removed using the Alt(⌥)+Enter and “Remove @var” quick-fix.
Tracking null types is a tough task, and there were places where PhpStorm failed. In 2020.1 PhpStorm knows when a variable can be null and when not. Check these examples.
Code Completion for an initialized array
Suppose you have an array with known elements, and later you try to iterate through it. The code completion didn’t work here before, because information about the type was lost. Now in 2020.1 everything works.
Code completion in array_map/filter
Now there is completion for array items in the body of the closures passed to array_map()
and array_filter()
.
Code coverage with PCOV and PHPDBG
You can get a code coverage report by using Xdebug. But since it is primarily a debugger, it has a significant overhead. To speed up reporting of coverage, you can use lighter tools such as the krakjoe/pcov extension or PHPDBG which is built-in with PHP 5.6+.
Both are now supported in PhpStorm. You need to create a Run configuration for tests and select the desired coverage driver in the settings. And then run tests with coverage report by clicking :
Read more about the differences in coverage reporting between Xdebug, PCOV, and phpdbg in README of PCOV.
PHPUnit Toolbox
In the recently released PHPUnit 9, many features have been removed or declared obsolete. To speed up migration and prevent errors, we have added lots of inspections and quick-fixes.
Also, you can now create a new test for a class very quickly by calling Alt(⌥)+Enter on the class declaration and selecting Create New PHP Test.
Metadata
Advanced Metadata allows you to provide PhpStorm with additional information about your project and thus improve code completion and inspections. For example, this feature is used in the Symfony plugin and in Laravel IDE Helper.
A number of improvements for metadata have been added to PhpStorm 2020.1.
The parameter index in override, map, and type directives
Previously, it was possible to adjust the behavior of the first argument of functions using override()
, map()
, and type()
. In PhpStorm 2020.1, you can now specify an arbitrary parameter index:
Access to properties via __get
If you’re trying to access properties through the magic __get()
method, the information about the type is lost. You could use additional @var
or @property
tags, but that didn’t always work. Now you can specify everything through metadata.
Completion for keys to the objects implementing ArrayAccess
Metadata supported ArrayAccess objects, but only suggested the type of values. Now the available keys can also be autocompleted.
Custom output points
PhpStorm considers functions like die()
and exit()
or throwing exceptions as terminating execution. But applications may have more complex exit points, for instance, a simple dd()
or a trigger_error() with an E_USER_ERROR argument.
In PhpStorm 2020.1, you can mark any functions as exit points and this will correct the control flow analysis accordingly.
Icons for functions with changed behavior via metadata
Functions whose behavior was changed using override()
, exitPoint()
, or expectArguments()
will now have an icon in the gutter. Clicking the icon will open the .phpstorm.meta.php file where the behavior was modified.
You can hide these icons under Preferences/Settings | Editor | General | Gutter Icons.
Machine Learning-assisted ranking for code completion
Ranking suggestions using machine learning makes it possible to sort the list of suggestions in a more optimal way.
How to see ML in action?
By default, the ML-assisted ranking is disabled. We don’t want it to take our jobs! To enable it, go to Preferences/Settings | Editor | General | Code Completion and turn on two options: Rank completion suggestions based on Machine Learning and PHP.
If you enable the option Show position changes in completion popup, then the autocompletion list will show how the order of items has changed.
We plan to prevent AI takeover to continue to work on this feature in the upcoming releases.
New inspections
A private property can be replaced with a local variable
The definition of a property will be highlighted if it is used in only one method and is overwritten immediately. In such cases, you can call the “Replace property with local variable” quick-fix with Alt(⌥)+Enter.
Unnecessary property initialization
Let’s assume that a private property has a default value in a class, but some other value is immediately assigned to the property in the constructor. In this case, the default value is redundant and only adds noise.
Unused initializations will be highlighted and can be removed by using the “Remove redundant initializer” quick-fix with Alt(⌥)+Enter .
Change the property type according to the default value in PHP 7.4
Redundant ternary operator
Phpstorm highlights trivial ternary expressions, and you can replace them with simpler ones using the Alt(⌥)+Enter quick-fix.
Excess pass-by-ref
Using a pass-by-ref may have unexpected consequences, and this is one of the reasons Nikita Popov proposed to Allow explicit call-site pass-by-reference annotation in PHP.
In the meantime, PhpStorm 2020.1 will highlight parameters that are declared as pass-by-ref but are not used as such. They can be safely removed with a quick-fix with Alt(⌥)+Enter.
The same will work for arrays with a pass-by-ref in foreach loops:
Removing an unnecessary PHPDoc block that only has type declarations is now easy thanks to a corresponding quick-fix.
Note that by default the inspection is at the Info level, which means that it will not highlight anything. If you want redundant PHPDoc blocks to be highlighted, set the severity level for the Redundant PHPDoc comment inspection to Weak Warning or higher in Preferences/Settings | Editor | Inspections.
Updated “Move method” refactoring
Sometimes it makes sense to transfer a method to another class. If this method is used many times throughout the project codebase, PhpStorm can help you.
Previously, it was necessary first to make the method static, and then to call another action to move a method. In PhpStorm 2020.1, the “Move method” refactoring is redesigned into one atomic action. Unnecessary operations and popups have been removed and everything is done in a single step.
Put the cursor over the method and press F6 (or Ctrl(⌃)+T, 3). Then select a destination class and you’re done.
PHP Debug in HTTP Client
You no longer need to bother with parameters or install the extension in your browser to start debugging. All you need to do is create an HTTP request in an .http file and execute it by running the PHP Debug command, which is available under the Alt(⌥)+Enter menu, or by clicking the play icon . As a result, an XDEBUG_SESSION cookie will automatically be added to the request.
And a few more little things for PHP
@deprecated elements are displayed as strikethrough in the Structure tree view.
Ctrl(⌘)+F12
Phpstorm Download Free In Windows 10
Highlighting for matching tags <?php / ?>
Jump to opening/closing braces
Shift+Ctrl+M (⌃+M)
Lexer customization for Twig
Sometimes you may need to change the tag characters for Twig templates, for example if you are using Angular, which has the same syntax.
You can now do this under Preferences/Settings | Languages & Frameworks | PHP | Twig.
IDE
Advanced spell checker and grammar corrector
The Grazie plugin is included in PhpStorm out of the box. It checks your text not only for spelling errors, but for grammar and style errors, too. Grazie supports 16 languages, and all checks are performed locally without sending your data to third parties.
By default, checks are enabled for text files.
You can also enable Grazie for all string literals, comments, PHPDoc blocks, and commit messages.
For PHP, you can turn Grazie on under Settings/Preferences | Editor | Proofreading | Grammar.
LightEdit Mode
Sometimes you may need to quickly look through or fix a file. In these cases, opening a whole IDE for a single file seems like overkill, but you still want to make use of highlighting and other helpful features you are used to. That is precisely what LightEdit mode is here for.
It works like this: if you open a file from the command line or OS context menu and PhpStorm is not running, the file will open in LightEdit. Note, though, that if a full-fledged instance of PhpStorm is active, the file will just open in it.
JetBrains Mono is now the default font
Zen Mode
This mode combines Distraction Free and Fullscreen modes, allowing you to take a deep dive into your code without any distractions.
Enable it under View | Appearance | Enter Zen Mode.
UI
Split terminal sessions
Instead of opening new tabs and switching between them, you can now split the window and open several sessions in one tab. To do this, select Split Horizontally / Vertically from the context menu.
IntelliJ Light theme
The light theme has been updated. It is now unified to look the same on all operating systems, and its name has been changed to IntelliJ Light.
Customization of the status bar
From the context menu, you can select which information to display on the status bar at the bottom right-hand corner of your IDE window.
Configuration
Unified SSH configuration
Previously, you had to reconfigure your SSH connection each time you reused it in the deployment, Remote interpreters, or SSH terminal.
You can now add or edit all SSH connections in a single place under Preferences/Settings | Tools | SSH Configurations and then use them wherever, and as often as, you need them.
The path to IDE configs has changed
For example, on macOS:
Learn more in the help article.
More flexibility when sharing Run Configurations
Previously, Run Configurations were stored in the .idea folder, which many people add to .gitignore
in its entirety (there is a better alternative though). Now you can choose any location to save the Run configuration and share it with your teammates through your VCS. This can be especially convenient when onboarding new employees: pull the project, open it in PhpStorm, and run it with a single click.
To do this, select the Store as project file option in the Run/Debug configuration dialog, and then click on the gear icon to select the desired path in the project.
Version Control
New Commit tool window
The Commit window is available in non-modal mode and is displayed on the left. This way, it does not keep you from viewing and working on other files while the commit is being prepared. This also allows more information about changes to be displayed on the screen.
The new Commit tool window is enabled by default for new users but disabled for those who previously had PhpStorm installed.
You are welcome to activate it with the option Use non-modal commit interface under Preferences / Settings | Version Control | Commit.
Improved Git branches workflow
The current Git branch is specified in the bottom right corner of the IDE window. If you click on it, the window will open the VCS | Git | Branches dialog.
We’ve added a search bar here. The Refresh button updates the list of remote branches. And we’ve added an indicator for each commit: incoming (blue) or outgoing (green).
Installing Git from IDE
When you clone an existing Git repository, PhpStorm will look for the Git executable on your machine, and will offer to download and set it up for you if the IDE can’t locate it.
Reworked Interactive Rebase workflow
Git Rebase allows you to rewrite commit history. Now you can quickly get rid of “temporary” commits, correct a message, or rearrange the order of the commits. Of course, you can do all this manually from the terminal, but in PhpStorm you can also see the content of the commit and the diffs.
Phpstorm Download
To start, you need to select the desired base commit in the commit history. Then select Interactively rebase from here from the context menu.
Database Tools
PhpStorm includes almost all the features of DataGrip out of the box. You can check out What’s new in Database tools for an overview from our colleagues about its new features.
Web
As usual, all the updates for WebStorm 2020.1 have also been incorporated into PhpStorm.
A full list of all the changes in this release is available in the really long release notes.
That’s all for today. Thanks for reading to the end! We’ll be happy to respond to your questions, suggestions, bug reports, and even just your thoughts in the comments.
Stay safe!
Your JetBrains PhpStorm team
The Drive to Develop