Be Awesome in PhpStorm Course at Laracasts by Jeffrey Way

laracasts_logoAll series of the video course Be Awesome in PhpStorm are now online at Laracasts and available for free! Thanks a million to Jeffrey, the author of this great courseware.

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

  • Hello
    Are you ready for the obligatory series introduction video? :)
  • Minimalism
    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.
  • Splits
    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).
  • Xdebug
    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.

Apart from the main course, there are also a few additional videos available, such as Make PhpStorm Pretty, PhpStorm Test Workflow, and Dev Machine Setup (as a part of another course).

Jeffrey Way, the author of the course, is a developer, speaker, and writer who specializes in Laravel.

Read more about Jeffrey and Laracasts, watch the full Be Awesome in PhpStorm course for free, and make sure to sign up to Laracasts for $9/month.

This entry was posted in Screencast and tagged , , . Bookmark the permalink.
  • Christopher Bloom
    • Mikhail Vink

      Fixed, thank you!

  • http://adampatterson.ca Adam Patterson

    laracasts.com has been a HUGE resource for me.

    I started my first Laravel client project with the support of Jeffreys videos, I also managed to really customize PHP Storm so it fits my work flow a lot better.

    I knew of the refactoring power in PHP Storm but never quite knew how to use it. While I am still rusty, its not nearly as confusing as I thought.

    Thanks to the both of you :)

  • Michele Somma

    Jeffrey and PhpStorm…they’re my heroes :P

  • http://bensmith.io Ben Smith

    This is the course that got me using PhpStorm. So many great tips and tricks; the removal of the tab bar has made a huge difference to my workflow. Given the Laravel love, blade support is much needed, I know it’s in the works but an update would be greatly appreciated!

  • http://www.circulationstudio.com Brian

    Recommended! Especially if you use SublimeText.

  • Carsten Decker

    You live and learn :)

    Cool!

  • aljareh4all

    my only reason to buy phpstorm was Jeffrey Way
    and all of his great lessons on laravel and phpstorm

  • http://he.rnand.es Diego Hernandes

    it will be more awesome when Blade gets supported.

    • Ramon Villain

      let us pray, folk.

    • Eric

      I, too, found it somewhat ironic they would link to a site with such a heavy emphasis on Laravel while still dragging their feet with regard to Blade support. It’s only been tracked and heavily requested for over a year now.

  • http://www.vividsoftwaresolutions.com/ vividsoftwaresolutions

    I have been testing PhpStorm for a few days now and it is incredible! Quick file navigation features are top of my favorite feature list. Emmet CSS and XML are included out of the box. I even managed to find and install the CodeGlance plugin which embeds a code minimap similar to the one found in Sublime into the editor pane. Works with both light and dark themes using your customized colors for syntax highlighting.

    I am pretty impressed so far!