BreadcrumbHomeResourcesBlog PhpStorm: Guide, Comparison, and Considerations July 1, 2020 PhpStorm: Guide, Comparison, and ConsiderationsPHP DevelopmentProductivityBy Erwin EarleyLong recognized as the leader in integrated development environment (IDE) for PHP, PHPStorm from JetBrains is a full-featured IDE that can both enhance the development environment as well as reduce the development life-cycle.In this guide to PHPStorm, we look at some of the features that make PHPStorm popular, compare PhpStorm against other PHP IDEs, discuss the considerations developers need to make when choosing a PHP IDE, then provide a list of helpful shortcuts you can use to better navigate PHPStorm — should you choose to use it.Table of ContentsWhat Is PhpStorm?How Does PhpStorm Compare to Other PHP IDEs?Considerations When Choosing PhpStorm or Other PHP IDEsUseful PhpStorm ShortcutsPhpStorm Integration With Zend ServerFinal ThoughtsTable of Contents1 - What Is PhpStorm?2 - How Does PhpStorm Compare to Other PHP IDEs?3 - Considerations When Choosing PhpStorm or Other PHP IDEs4 - Useful PhpStorm Shortcuts5 - PhpStorm Integration With Zend Server6 - Final ThoughtsBack to topWhat Is PhpStorm?PhpStorm is a commercial PHP IDE developed by JetBrains. Compatible with PHP, HTML, and JavaScript, PhpStorm provides real-time code completion, error prevention, and refactoring features.As PHP developers are well aware, developing a PHP application usually deals with more than just PHP. This is one of the areas that PHPStorm shines with support for the entire web development stack including HTML and JavaScript in addition to PHP. As will be shown later, PHPStorm even provides support for working with databases directly from the IDE environment which, since database access is a primary focus of many PHP applications, can be a great time saver in the development process.Is PhpStorm Free?No, PhpStorm is not free. Based on the subscription model, pricing models are available at both the yearly and monthly level with reduced costs for subsequent years. Free offerings in the PHP IDE space include NetBeans, Eclipse, and Visual Studio code.Back to topHow Does PhpStorm Compare to Other PHP IDEs?PhpStorm certainly isn't the only IDE in the marketplace, with other solutions including NetBeans, Eclipse, Visual Studio Code, and ZendStudio. But, as indicated earlier, PHPStorm is consistently ranked as the number one IDE for PHP development in many internet-based surveys.All of the IDEs provide a similar set of base functionality including multi-language support and code completion. Where PhpStorm starts to outpace the competition is in areas such as Intelligent Code Completion, support for a variety of Frameworks, and expansive code inspection including support for SQL. The features outlined above aren't just for PHP. As an example, when working with SQL (a common task for a PHP developer), the PhpStorm features of inspection can be used as well as auto-completion of tables and fields which can help to ensure that the database structures are in sync with the code being developed. Back to topConsiderations When Choosing PhpStorm or Other PHP IDEsWhen choosing an IDE, it's important to keep the following considerations in mind:Features and FunctionsWhile important, don't get overwhelmed with the massive list of features and functions that some IDEs provide; rather, determine those features that are important to your development effort and ensure that the selected IDE provides those.Integration with Other Development ToolsA development environment in which all of the tools work cooperatively together can lead to significant performance improvements in the development effort. You will want to ensure that the selected IDE works well with the application server, and source code control systems deployed in the environment – both of which PhpStorm has good integration capabilities for.Currency with Language VersionsLike any modern language PHP is constantly evolving with new features, it's important that the IDE stay current as well to ensure that IDE functions such as code-completion support new/modified functions provided by the language.CostWhile an important consideration, cost should actually be the last consideration. As an example, free offerings may not be providing the features that you need for your development effort. Back to topUseful PhpStorm ShortcutsTo enhance a developers productivity in working with the features of PhpStorm itself, there are a wealth of keyboard shortcuts. These include shortcuts related to editing, debugging, refactoring, navigation, and search tasks. We have put together a few tables for PhpStorm Windows shortcuts below. Click the links below to jump to the desired section.General Shortcuts Editing Shortcuts Debugging Shortcuts Refactoring Shortcuts Navigation Shortcuts Search ShortcutsGeneral PhpStorm ShortcutsThese shortcuts are essential for basic PHPStorm use.General PhpStorm Shortcuts for WindowsDescriptionWindows ShortcutSearch everywhereDouble ShiftFind ActionCtrl + Shift + AOpen corresponding tool windowAlt + #[0-9]Toggle full screen modeCtrl + Alt + F11Toggle maximizing editorCtrl + Shift + F12Add to FavoritesAlt + Shift + FInspect current file with current profileAlt + Shift + IOpen Settings dialogCtrl + Alt + SSwitch between tabs and tool windowCtrl + TabPhpStorm Editing ShortcutsIf you're editing code with PhpStorm, these shortcuts are good ones to have close by.PhpStorm Editing Shortcuts for WindowsDescriptionWindows ShortcutBasic code completionCtrl + SpaceShow intention actions and quick-fixesAlt + EnterParameter info (within method call arguments)Ctrl + PQuick documentation lookupCtrl + QBrief InfoCtrl + mouse over codeGenerate code... (Getters, Setters, Constructors)Alt + InsertOverride methodsCtrl + OImplement methodsCtrl + ISurround with... (if..else, try..catch, for, etc.)Ctrl + Alt + TComment/uncomment with line commentCtrl + /Comment/uncomment with block commentCtrl + Shift + /Select successively increasing code blocksCtrl + WDecrease current selection to previous stateCtrl + Shift + WReformat codeCtrl + Alt + LAuto-indent line(s)Ctrl + Alt + IDuplicate current line or selected blockCtrl + DDelete line at caretCtrl + YSmart line join (HTML and JavaScript only)Ctrl + Shift + JSmart line split (HTML and JavaScript only)Ctrl + EnterStart new lineShift + EnterToggle case for word at caret or selected blockCtrl + Shift + USelect till code block end/startCtrl + Shift + ] / [Delete to word endCtrl + DeleteDelete to word startCtrl + BackspaceExpand/collapse code blockCtrl + NumPad+/-Close active editor tabCtrl + F4Paste from historyCtrl+Shift+VPhpStorm Debugging ShortcutsDebugging a PHP application with PhpStorm? These shortcuts will come in handy.PhpStorm Debugging Shortcuts for WindowsDescriptionWindows ShortcutStep overF8Step intoF7Step outShift + F8Evaluate expressionAlt + F8Resume programF9Toggle breakpointCtrl + F8View breakpointsCtrl+Shift+F8PHPStorm Refactoring ShortcutsRefactoring code is hard enough. These refactoring shortcuts for PHPStorm can make it more surmountable.PhpStorm Refactoring Shortcuts for WindowsDescriptionWindows ShortcutCopy/MoveF5/F6Safe DeleteAlt + DeleteRenameShift + F6Inline VariableCtrl + Alt + NExtract Method/Variable/Field/ConstantCtrl + Alt + M/V/F/CRefactor This (shows all available refactorings)Ctrl + Alt + Shift + TPhpStorm Navigation ShortcutsQuickly find relevant points in your code with these PhpStorm navigation shortcuts.PhpStorm Navigation Shortcuts for WindowsDescriptionWindows ShortcutGo to classCtrl + NGo to fileCtrl + Shift + NGo to symbolCtrl + Alt + Shift + NGo to lineCtrl + GGo to next/previous editor tabAlt + Right/LeftGo to editor (from tool window)EscRecent files popupCtrl + ENavigate back/forwardCtrl + Alt + Left/RightNavigate to last edit locationCtrl + Shift + BackspaceSelect current file or symbol in any viewAlt + F1Go to declarationCtrl + B or Ctrl + ClickGo to implementation(s)Ctrl + Alt + BOpen quick definition lookupCtrl + Shift + IGo to type declarationCtrl + Alt + BGo to super-method/super-classCtrl + UGo to previous/next methodAlt + Up/DownMove to code block end/startCtrl + ] / [Next/previous highlighted errorF2 / Shift + F2Edit source / View sourceF4 / Ctrl + EnterPhpStorm Search ShortcutsLooking for something in your code? These PhpStorm search shortcuts can help.PhpStorm Search Shortcuts for WindowsDescriptionWindows ShortcutFind/ReplaceCtrl + F/RFind next/previousF3/Shift + F3Find/Replace in pathCtrl + Shift + F/RFind usages / Find usages in fileAlt + F7 / Ctrl + F7Highlight usages in fileCtrl + Shift + F7Show usagesCtrl + Alt + F7Back to topPhpStorm Integration With Zend ServerThe PhpStorm ecosystem includes a number of extensions for adding additional capabilities to the IDE. One of these extensions is to support Zend Debugger, a PHP debugger that is included with Zend Server. This allows the developer to integrate the debug capabilities of Zend Server with those of PhpStorm to enable capabilities such as launching debug sessions from the Zend Server environment (including code trace and ZRay).Back to topFinal ThoughtsIDEs can be a significant time-saver for PHP/Web development efforts and PhpStorm is an offering in the IDE space that is well worth evaluation and consideration. Did You Know Zend Offers Secure and Supported PHP 5.6 and 7.1 Runtimes?Learn more about how to keep your application safe and secure with Zend PHP runtimes.See More InformationAdditional ResourcesLooking for additional information on how to use PhpStorm with Zend Server? The resources below are worth a look.Video -Debugging in PHPStorm With Zend ServerGuide - Using PHPStorm With Zend ServerPage - Zend ServerBack to top
Erwin Earley IBM Champion | Former - Senior Solutions Consultant, Zend, Perforce Software As an IBM champion, Mr. Earley has been recognized as a leader in the IBM i community and offers more than 20 years of experience helping customers to implement solutions on the platform. His expertise includes using PHP, MariaDB, Docker, and Chef for creating modern enterprise solutions that run on IBM i, as well as PowerVC for cloud deployments and virtualization management. Mr. Earley is a frequent speaker at global technology conferences, and he has authored numerous articles on Linux, PHP, virtualization, systems management, and open source solutions and concepts.