Be Awesome in PhpStorm Course at Laracasts by Jeffrey Way
The course consists of 24 episodes. Most of the course is not Laravel-specific, so it’s recommended to all PhpStorm users.
Be Awesome in PhpStorm
Think about how many hours each week you spend within your editor. Doesn’t it make sense to unlock every inch of its capabilities? I certainly subscribe to that idea! Why don’t you come along, and I’ll teach you everything I know about PhpStorm.
– Jeffrey Way, Laracasts
Are you ready for the obligatory series introduction video? :)
You may enjoy the visual bulk of an IDE. Personally, though, I quite like the minimalism that you get out of the box from, say, Sublime Text. Luckily, because every inch of PhpStorm is configurable, we can clean things up drastically!
- Color IDE
Right now, our sidebar is a completely different color from our color theme. It looks terrible! Let’s fix that.
- Two Important Keybindings
In this episode, we’ll review the two most important commands in PhpStorm, while preparing better keybindings for them.
- Create New Files Quickly
When you need to create a file, do you open the sidebar, toggle a number of folder trees, right-click, and then choose “New File”? That’s so much work! Instead, let me demonstrate how to use the floating directory tree for these sorts of tasks.
- Custom File Templates
Maybe it would be nice if, when you create a new PHP file, there would be an option to select that it should be an Eloquent model (or any type, really). Is that possible? Yes! We can use file templates to allow for this.
- Live Templates
Anything that can be automated… should be automated! This includes the creation of common code fragments. In this lesson, I’ll demonstrate PhpStorm’s live templates, as we create a helper template for rapidly preparing form groups.
- Custom Formatting
One area where an IDE truly excels is when it comes to automatic code formatting. Even better, like everything else in PHPStorm, every ounce of that formatting is configurable!
- Refactoring: Name and Method
Let’s move on to a study of PhpStorm’s refactoring capabilities. We’ll begin with the essentials, by reviewing “refactor name” and “refactor method.”
- Refactoring: Pull Up
Many times, you’ll find that you want to extract a bit of code into a parent class. Wait! Don’t touch that mouse. I’ll show you an easier way to accomplish this common task.
- Refactoring: Extract Interface
For the instances when you want to take an existing class and extract an interface from it, PhpStorm has you covered!
- Refactoring: Extract and Inline Variable
The basic rule is that anything which can be automated…should be automated! When you need to inline an existing variable or extract a new one, PHPStorm has you covered.
- Fast Composition
When you add dependencies to your classes, do you find yourself manually typing those assignments? Once again, let’s automate this stuff!
- Navigating to Sass Symbols
You know how we can quickly navigate to PHP symbols? Well, the same is true for CSS and Sass! If you’ve ever found yourself browsing through Sass partials, hunting down a particular class declaration, well: you’ll never have to do that again!
- PhpStorm’s Laravel Facades Issue
Did you install PhpStorm, and notice that it applies a “warning” squiggly to all facades? Did you also notice that there’s no autocompletion support? Hmm… that stinks; but, luckily, there’s an easy fix!
- Multiple Cursors
If you’re switching to PhpStorm from Sublime Text, then you’re likely missing its support for multiple cursors. Don’t worry; PhpStorm has it, too! The keybindings are different, but, naturally, that’s configurable—like everything.
Countless Vim and Sublime Text users depend upon splits to speed up their workflow. Don’t worry; PhpStorm offers them, too! Let’s set up a good system for making use of them.
- Vi-Mode With Mappings
If you’re coming to PhpStorm from Vim, then it’s likely that all of those countless keybindings are engrained into your fingers. Don’t worry; you can still use that muscle memory in PhpStorm! Even better, you can translate much of your .vimrc file over as well (though not everything).
Sure, using var_dump to debug your code is quick and useful. However, is it possible that there’s a better, more efficient way to go about debugging your applications? Let’s talk about Xdebug and PhpStorm for a bit.
- Xdebug and Laravel
Now that you understand how to go about debugging a single PHP script, what might the process of debugging a typical Laravel application look like?
- Composer Dependencies and PhpStorm
While you can certainly install Composer dependencies through the terminal, if you prefer, you could also accomplish the same task from within PhpStorm. Let me show you how.
- Testing in PhpStorm
Though you can certainly continue to do all of your testing from the command line (which I typically do), you also have the option of testing directly within the IDE. Let me show you.
- Code Coverage
Often, it can be useful to measure code coverage. Or, in another words, how much of this particular class is covered under tests? PhpStorm makes this process a cinch!
- Why I Use Both PhpStorm and Sublime Text
The truth is that, in my day-to-day workflow, I use both PhpStorm and Sublime Text. …Now why would I do that? Let me explain.