JetBrains PhpStorm er et integrert utviklingsmiljø for PHP-utviklere som er bygget på plattformen til IntelliJ IDEA.
DESCRIPTION
Ruby on Rails and Node.js, Laravel Expert. Amsterdam, North Holland, Netherlands. Hi, I am web developer focusing on the back end with over 10 years experience. Proficient working with HTML, CSS, Javascript, a. Facebook Advertising. Twitter Development. PHPStorm was developed by JetBrains and it is also one of the best PHP editor IDE for building apps, website and so on using PHP. It is written in JAVA and has become a strong choice for many developers in the world. It is totally free for teachers and students but requires a license fee as an enterprise editor. PhpStorm is perfect for working with Symfony, Laravel, Drupal, WordPress, Zend Framework, Magento, Joomla!, CakePHP, Yii, and other frameworks. All the PHP tools The editor actually 'gets' your code and deeply understands its structure, supporting all the PHP language features for modern and legacy projects.
PHP IDE with refactorings, code completion, on-the-fly code analysis and coding productivity orientation.
PhpStorm is a PHP IDE. It provides on-the-fly error prevention, autocompletion and code refactoring, zero configuration debugging and an extended HTML, CSS, and JavaScript editor. PhpStorm also provides powerful built-in tools for debugging, testing and profiling your applications.
PhpStorm - PHP IDE with Intelligent editor for productive coding
PhpStorm provides a rich and intelligent code editor for PHP with syntax highlighting, extended code formatting configuration, on-the-fly error checking, and smart code completion.
PhpStorm PHP Code Completion
Code completion (Ctrl + Space) finalizes classes, methods, variable names, and PHP keywords, plus commonly used names for fields and variables depending on their type.
PhpStorm PHPDoc Support
The PhpStorm editor respects PHPDoc in your code and provides appropriate code completion suggestions based on @property, @method and @var annotations. When you edit PHPDoc for your code, the variables names and types are auto-completed from the corresponding code blocks. PHP code refactorings also consider PHPDocs to keep them up-to-date.
PhpStorm PHP Refactoring
Rename refactoring works for files, functions, constants, classes, properties, methods, parameters, local and global variables. Make global project changes easily and safely. Local changes are made instantly in-place.
PhpStorm Smarty Templates Editing
PhpStorm IDE allows you to use a Smarty template engine and offers the following productivity features for working with .tpl files:
- Configurable syntax highlighting for keywords, strings, variables and braces
- Syntax errors highlighting
- Smarty functions and attributes completion
- Automatic insertion of paired braces, quotes and closing tags
- Commenting of the selected block with a single hotkey
- Custom Smarty delimiters support
PhpStorm Efficient project analysis and navigation
Thorough source code analysis allows PhpStorm to provide a sophisticated code completion, even to unannotated code, for example:
- Function return type is deducted from its body and return statements
- Class property types (and declarations) are extracted from the constructor code
- File structure view and class, method and call hierarchy views allow for faster code review and navigation.
PhpStorm Unit testing without interruptions
Develop PHP Unit tests in PhpStorm and run them instantly from directory, file or class using the context menu options. Dedicated Run/Debug configurations allow you to the required set of tests at any time. Tests are executed in a dedicated Test Runner UI, displaying results overview and detailed stats for the whole suite and every particular test. In case of a test failure you can instantly get from the stacktrace to the line of code where the error occurred.
Code stepping and evaluation with built-in debugger
PhpStorm provides numerous options for debugging your PHP code allowing you to:
- Set conditional breakpoints with smart step into that allows you to choose a particular method to step into from the call chaininspect context-relevant local variables and user-defined watches, including arrays and complex objects, and edit values on the fly
- Evaluate an expression in runtime
- Debug a page in multiple sessions simultaneously
- Keep a debugging session alive while moving between pages
TRY NOW
Download demo of PhpStorm
Download a trial of PhpStorm and evaluate the product for 30 days. A trial license can be downloaded at https://www.jetbrains.com/products.html.
SPECIFICATIONS
System requirements PhpStorm
Operating System for Deployment
Windows 10
Windows 8.1
Windows 8
Windows 7
Windows Vista
Windows XP
Windows Server 2003
GNOME or KDE desktop
Mac OS X 10.5 or higher
Architecture of Product
32Bit
Product Type
Application
Prerequisites
Disk Space Required: 1 GB RAM minimum 2 GB RAM recommended
RESOURCES
Here is our collection of resources for learning and getting the most of your subscription of JetBrains.
Videos
COMPARE
Licensing Terms
JetBrains uses a subscription-based licensing model, allowing you to purchase yearly subscriptions that includes all bug fix updates. The new licensing model also includes perpetual fallback license grants. When purchasing an annual subscription, you will immediately get a perpetual fallback license for the exact version available at the time of your purchase.
Commercial Annual Subscription - for legal entities, including companies and organizations (both for-profit and non-profit), requiring the software for general commercial use. A legal entity may use the software under the Business Subscription on any computer, operating system, and by any developer within a legal entity, provided that the total number of concurrent users never exceeds the number of subscriptions purchased by that legal entity.
Commercial Annual Subscription includes:
- Free unlimited email access to technical support and online support resources for the period of the Business Subscription
- Free generally available bug fix upgrades, minor releases and major releases for the licensed JetBrains IntelliJ IDEA edition for the period of the Business Subscription
- Available to any legal entity (companies and organizations, including non-profit and government)
- The license is owned by the legal entity, not by an individual
- Non-transferable restriction: Use of the software is restricted to the legal entity with no right to transfer. Companies and organizations can only transfer their licenses between employees and contractors
- The licensed purpose of use is general commercial usage
- Multi-user license - the total number of concurrent software users cannot exceed the number of purchased subscriptions
- The license term is time-limited, based on yearly subscription payments
- Perpetual fallback license: Your license is NOT perpetual. The new licensing model includes perpetual fallback license grants. Perpetual fallback license is a license that allows you to use a specific version of the software after your Business Subscription expires. The specific version of the software that you can fallback to use when your Business Subscription expires will be the exact version available at the time of your purchase
SUPPORT
Support
In the subscription following Support and Maintenance with JetBrains is included
- Unlimited access to technical support via e-mail
- Free upgrades to all minor and major releases including bug fixes
We recommend the following JetBrains support- and resource pages:
Alfasoft offer first line support to our JetBrains customers
Please click here for first line support! (Link to alfasoft.com support form)
Please explain your problem in detail when contacting us. Please remember to enter your version number, and which operating system you are running.
NEWS
PHP
- Doctrine Query Language- PhpStorm comes with full advanced DQL support. You’ll get all the inspections and refactorings: find usages, rename entity or field, associations support, and even more.
- PHP 7.3 Support- Including flexible Heredoc and Nowdoc syntax, trailing comma in function and method calls, literals as the first operand of instanceof, and the list() reference assignment.
- Ctrl+Dot Completion- Press Ctrl+. in the suggestions list to get the completed item followed by an arrow. You can then type in the method name right away.
- PHPDoc Improvements- PhpStorm adds Support for Intersection Types “&”. If you annotate a variable as Foo&Bar, then it is of type Foo and of type Bar at the same time. PhpStorm will also suggest members of both classes.
- Improvements for formatted string functions -PhpStorm makes it easier to use printf() / sprintf() and prevent common mistakes.
- Refactorings and Intentions- PhpStorm 2018.3 delivers many refactoring improvements and related intention actions:
- With the Replace with Alias intention, you can now replace use FooBar with use FooBar as Baz, which will also replace all Bar occurrences with Baz. The opposite action Inline Alias is available as well.
- The new intention Сhange Class Member Visibility allows you to safely switch public/protected/private modifiers of properties and methods.
- Private name refactoring is improved and by default PhpStorm will search only context usages when renaming private properties.
Deployment
- Remote Deployment To Multiple Hosts -PhpStorm lets you copy files and folders to a remote server using FTP/SFTP/FTPS, as well as to a local or mounted folder as a destination. Now you can deploy to multiple servers at once by using server groups. Add as many groups as you wish with an arbitrary number of destinations in each group, and deploy to all servers in a group simultaneously in one click.
Quality Tools
- PHP CS Fixer Support- Now with PHP CS Fixer support, it becomes possible to automatically fix code style issues. Not only will PhpStorm detect the path to PHP CS Fixer for you, but it will also autodetect your custom ruleset and turn on the corresponding inspection. Go to some file with code style issues, and run quick-fix that will update the whole file at once.
- Autodetect non-PSR coding standards for PHP_CodeSniffer -Non-PSR coding standards for PHP_CodeSniffer will be autodetected from your composer.json for the following frameworks: Symfony, Doctrine, Drupal, WordPress, Joomla!, Magento, MediaWiki, Yii 2, and CakePHP.
- Simplified settings of quality tools -The quality tools settings have been simplified: you can now configure all supported tools (PHPCS, PHPMD, and PHP CS Fixer) in one place.
Version Control
- GitHub Pull Requests -You can now work with pull requests inside PhpStorm. Select VCS > Git > View Pull Requests in the menu to open a new tool window with a list of all the pull requests in your project. You can see the description, assignee, reviewers, labels, and changed files from the pull request. See diffs and create a new local branch from pull requests right there.
- Support for Git submodules -All the familiar features in the Git integration, such as update project, commit changes, view diff, and conflict resolution, now work with Git submodules.
- Ignore whitespaces -You can now ignore or trim whitespaces while merging – the configuration is available in the new drop-down at the top of the Merge Revisions for… dialog. Whitespaces are also ignored by default when you use Annotate for a file.
- And even more -Advanced navigation in the VCS log with arrow keys, a parallel fetch of multiple Git repos, better support for pre-commit hooks, and a lot of other improvements are in store.
- Web Technologies Support
- Autoimports in JavaScript -In JavaScript files, PhpStorm can now automatically add imports not only for symbols defined in your project, but also for symbols from the project’s dependencies. This works as long as the library has sources written as ES modules or a TypeScript type definition file.
- Improved Angular support- PhpStorm is now much better at helping you edit Angular templates. Сode completion and Go to definition for variables, pipes and async pipes, as well as for the template reference variables, are now much more accurate. In total, over 50 known issues have been fixed in Angular and AngularJS support.
- Better 'null' and 'undefined' check -PhpStorm can now better detect situations that lead to a TypeError because a method is invoked on a value that is undefined or null, or it is passed to a function, or its property is used.
- Vuetify support -PhpStorm now provides code completion for components from Vuetify version 1.1 or later.
- React improvements -In React apps, code completion now suggests all component lifecycle methods. The Unresolved variable inspection will now warn you about any potentially undefined components.
IDE
- New search popup- The new Search Everywhere dialog is a better way to navigate the project and the IDE - search classes, files, symbols, and even actions and settings. Press Shift-Shift to search everywhere, and switch contexts by pressing Tab.
- High-contrast theme- To make it more accessible, PhpStorm adds a new high-contrast UI theme. The IDE now allows screen readers to read line numbers, VCS annotations, breakpoints, and other gutter icons. Learn more about screen reader support in the documentation.
Database Tools
- Cassandra database support.
- Many improvements in code completion.
- Support for extensions in PostgreSQL.
- Introduce table alias intention.
- Auto-reconnect after time-outs.
- Ever struggled with finding variables while debugging? Start typing anything to Search variables in debug.
- Run configurations for HTTP Requests are now supported and created for you automatically as soon as you run a request.
- Aliases References In Italic help to distinguish real class names and aliased ones.
- PhpStorm will autodetect Configuration for Test Frameworks based on the composer.json and dotfiles and automatically create Run Configuration to run tests.
- You’ll be able to generate setUp and tearDown methods for PHPUnit which are called every time before and after running each test method, respectively.
TRAINING & EVENTS
Currently Alfasoft does not offer JetBrains trainings.
For a first insight about PhpStorm, please watch following video:
Use this page to enable or disable specific smart keys and to define which actions you want to be invoked automatically.
Item | Description |
---|---|
Home moves caret to first non-whitespace character | When this checkbox is selected, on pressing Home, the caret is positioned at the first non-whitespace character of the current line. Pressing Home subsequently moves the caret from the Smart Home position to the first column and back. |
End on blank line moves caret to indent position | When this checkbox is selected, on pressing End in an empty line, the caret is positioned with the indent, which PhpStorm assumes to be reasonable in the current code point (indentation is based on the current Code Style Settings ). |
Insert pair brackets (), [], {}, <> | Select this checkbox to have PhpStorm automatically add a closing bracket for each typed opening bracket, respectively. |
Insert pair quote | Select this checkbox to have PhpStorm automatically add a closing single or double quote for each typed opening single or double quote, respectively. |
Reformat block on typing '}' | If this checkbox is selected, then, on typing the closing curly brace, the enclosed code block is reformatted automatically, if the formatting of this code block does not match the selected code style. |
Use 'CamelHumps' words | Select this checkbox to have PhpStorm discern separate words within CamelHump names. Words within a name should start with a capital letter or an underscore. This option impacts some editor actions, for example:
|
Honor 'CamelHumps' word settings when selecting using double-click | Select this checkbox to have PhpStorm invoke the CamelHumps selection when words are selected by double-clicking. This feature works only if the Use 'CamelHumps' words option is enabled. |
Surround selection on typing quote or brace | If this checkbox is selected, the selected text on typing a quote, double-quote or brace, will be surrounded with these characters. If this checkbox is not selected, then the typed quotes, double-quotes or braces will replace the selection. |
Add multiple carets on double Ctrl with arrow keys | If this checkbox is selected, then:
For more information, see the Multicursor section. |
Jump outside closing bracket/quote with Tab when typing | If this checkbox is selected, pressing Tab when typing inside brackets/quotes will move the caret outside the closing bracket/quote. If this checkbox is not selected, pressing Tab will insert the Note that this only works on initial typing: during subsequent editing, pressing Tab inside brackets/quotes will insert the |
Enter | Use this area to define the actions to be invoked by pressing Enter.
|
Unindent on Backspace | Use this list to define the actions to be invoked by pressing Backspace key. The available options are:
|
Reformat on paste | Use this list to specify how to place pasted code blocks. The available options are:
This feature is applicable to lines that contain the trailing line feed characters. |
Kotlin | Use this area to configure the smart keys options for Kotlin.
|
AngularJS | Use this area to define the behavior of AngularJS:
|
Use this page to configure the editor behavior for HTML, XML, and CSS.
Item | Description |
---|---|
XML/HTML | In this area, define the actions to be invoked automatically when editing XML or HTML code.
|
CSS | In this area, define the selection of CSS identifiers/classes:
|
Phpstorm Smarty Cat
Use this page to configure the editor behavior for JSON.
Item | Description |
---|---|
JSON | The settings in this area control automatic adding of commas, quotes, and whitespaces in JSON context in compliance with the JSON syntax. |
Use this page to configure the editor behavior for JavaScript.
Item | Description |
---|---|
Start template string interpolation on typing '$' | Select this checkbox to insert expressions with normal strings after the $ sign. See Expression interpolation for details. |
Escape text on paste in string literals | By default, PhpStorm automatically inserts backslash escape symbols ( |
Convert attributes when pasting HTML to JSX files | By default, when you copy a piece of HTML code with class attributes or on-event handlers and paste it into JSX, PhpStorm automatically replaces these attributes with React-specific ones ( To copy HTML code to JSX 'as is', clear the checkbox or use Paste SimpleCtrl+Alt+Shift+V. |
Use this page to configure the eiditor behavior for SQL.
Item | Description |
---|---|
Insert string concatenation on Enter | You may want to turn this option off, if the DBMS you are working with supports multiline string literals: Say, there is the following fragment for PostgreSQL and the cursor is in front of the word If the option is on, and you press Enter, the fragment will change to: SET notes = 'Lightest ' || 'element' Otherwise, the fragment will change to: |
Close code blocks on Enter | When you start a code block with an opening keyword (BEGIN, LOOP, BEGIN TRY, and others) and press Enter, the code block closes with the corresponding closing keywords (END, END LOOP, END TRY, and others). |
Qualify object on code completion | The selected option defines how the name of an object is inserted in the editor when using the code completion suggestion box.
|
Use this page to configure the editor behavior for Yaml.
Item | Description |
---|---|
Auto expand key sequences upon paste | With this option selected, PhpStorm properly formats key sequences when you paste them from the clipboard. For example, the key2.anoher_key sequence pasted from the clipboard will be displayed with the correct hierarchy. |
Use this page to define the behavior of the editor in the PHP context.
Phpstorm Smarty Bear
Item | Description |
---|---|
Enable smart function parameter completion | When this checkbox is selected, you can use the “automatic” live template that provides completion lists for the parameters passed into functions, methods, or class constructors. To invoke the magic live template, type the params keyword as the first parameter in the call of the function, method, or class: PhpStorm displays a live template where the parameters are automatically completed with the variable names defined in the function declaration. To move to the next parameter, press Enter or Tab. To move to the previous parameter, press Shift+Tab. The completion list contains variables from a local scope in the next order: with the same type, with a similar name, defined nearby. You can always switch to the usual completion mode by pressing Ctrl+Space or just typing anything which is not in the list. Variables with similar names are inserted automatically. |
Select variable name without $ sign on double click | When this checkbox is selected, only the variable name that follows the $ sign is selected on double-click or pressing Ctrl+W. This is helpful if you often need to copy variable names without $ : just double-click and copy the selection. If you still need a variable name with $ selected, position the caret before the $ sign and double-click it or press Ctrl+W. |
Remove PHP open/close tags while pasting in PHP context | If selected, PhpStorm will automatically remove the opening and closing <?php ?> tags from the pasted PHP code snippets. |
Escape symbols on paste in string literals | If selected, PhpStorm automatically inserts backslash escape symbols ( Clear the checkbox to suppress automatic symbols escaping. |
Auto-insert '<?php' tag after typing '<?' | If selected, PhpStorm will automatically insert the <?php opening tag when you type the <? short tag. Note that short tags are deprecated in PHP 7.4, and are planned for removal in PHP 8.0. See the RFC for details. |
Show additional options when searching for method usages | If selected, when you search for usages of a method, PhpStorm will prompt you to choose whether you want to find usages of a base method or method's implementations. |