Skip to content

olivernybroe/collector-intellij

Repository files navigation

collector header

GitHub Workflow Status (master) Total Downloads Latest Version

Collector - A collection's plugin for PhpStorm

This plugin adds support for Laravel Collections.

It contains a bunch of handy refactorings for making your collections better. It can also convert normal PHP statements into collections.

Installation

The plugin has no stable version, only manual and EAP is possible.

  • Using IDE built-in plugin system:

    Preferences > Plugins > Marketplace > Search for "Collector" > Install Plugin

  • Manually:

    Download the latest release and install it manually using Preferences > Plugins > ⚙️ > Install plugin from disk...

Configuration

⚠️ The inspections might be disabled by default! Go to preferences for enabling them.

All the features are added as inspections in PhpStorm, this means you can disable the ones you don't like or change how severe the warning are on them.

For example, by default refactoring foreach to collection is not highlighting the text.
However, if you would like to enforce yourself to never use foreach, you can change the severity to error.

inspection-settings

Features

foreach to collection

foreach-example

array_map to collection

array_map-example

map(...)->flatten(1) to flatMap

flatmap-example

Remove nested collections

recursive-collection-example

Closure to arrow functions

closure-to-arrow-example

where(...)->first() to firstWhere

where-first-to-firstWhere-example

where(...)->isNotEmpty() to contains

where-isNotEmpty-to-contains-example

Credits

Special thanks to Caneco for the logo ✨


Plugin based on the IntelliJ Platform Plugin Template.