"repositories": {
"dev-package": {
"type": "path",
"url": "./packages/mevendor/hello"
}
},
"autoload": {
"psr-4": {
"MeVendor\\Hello\\": "packages/mevendor/hello/src/"
}
},
class MyInvoke
{
protected $state = 1;
public function __invoke($arg)
{
$this->state++;
return $arg + $this->state;
}
}
Route::get('/', function () {
$arr = [1, 2, 3, 4, 5];
return var_dump(array_map(new MyInvoke(), $arr));
});
Если вы используете ООП, то invoke вам не нужен, оперируйте объектами, а не функциями, и не мутантами вида "объект как функция".
SomeClass::someStaticMethodInsteadInvoke()
Не скажу что это будет как-то шибко проще )) но по крайней мере ты будешь тратить время именно на то, с чем потом тебе придется работать.
Например: всеми этими штуками, которые в сабже, занимается Laravel-роутер. И пока ты сейчас пытаешься разобраться с ModRewrite - ты мог бы это время и эту энергию потратить на изучение Laravel-роутера :)
Смысл совета именно в этом.