PHP-Doc in Blade-Views
– gummibeer.dev - submitted by Tom Witkowski
How to use PHP-doc tags for better autocompletion in Blade views.
Read more [gummibeer.dev]
Posts tagged with autocomplete
– gummibeer.dev - submitted by Tom Witkowski
How to use PHP-doc tags for better autocompletion in Blade views.
Read more [gummibeer.dev]
#didyouknow that by type-hinting `offsetGet` and `current`, you can get autocompletion of custom Iterator and ArrayAccess classes in @phpstorm pic.twitter.com/Mr19b2gpye
— BrenDt (@brendt_gd) June 1, 2018
Read more [twitter.com]
Join 9,500+ smart developers
Every month I share what I learn from running Spatie, building Oh Dear, and maintaining 300+ open source packages. Practical takes on Laravel, PHP, and AI that you can actually use.
No spam. Unsubscribe anytime. You can also follow me on X.
If you're using PhpStorm you probably make heavy use of it's autocomplete features. The IDE can, for most classes, suggests all accessible functions. Unfortunately, when a function has a dynamic return type PHPStorm will leave you out in the cold. So when resolving something out of Laravel's IoC-container PhpStorm cannot help you. Here's an example with one of the repositories of Blender:
PhpStorm can't suggest functions because it doesn't know which class the make-function will return. Let's fix that.
The DynamicReturnType plugin provides a way to dynamically specify the return type of a function. You can install it like every other PHPStorm plugin. Next you'll have to create a file called dynamicReturnTypeMeta.json in the root of your project with this contents:
{
"methodCalls": [
{
"class": "\\Illuminate\\Contracts\\Foundation\\Application",
"method": "make",
"position": 0
}
]
}
```
This configuration will tell PHPStorm that the return type of the make-function of Illuminate\Contracts\Foundation\Application will return an instance of class specified in the first argument.
With this file in place PHPStorm can perform autocompleting:
To learn all other possibilities the plugin offers, read it's documentation on GitHub.
Update: As Nicolas Widart mentions in the comments below there's another (and maybe easier way) to get autocompletion when resolving stuff from Laravel's IoC-container. The ide-helper package can generate a meta file that, when indexed, will make PhpStorm understand which object gets returned.