Helpers Globais
v4Funções prontas para configuração, requisições, respostas, views e caminhos de arquivo. Estão disponíveis em qualquer handler, view ou service — basta chamar pelo nome.
Se seu arquivo tem namespace MUCRM\..., use \config() com barra no início para chamar o helper global. Sem a barra, o PHP procura a função no namespace atual.
config()
Lê valores dos arquivos em config/ (na raiz do projeto, não em bootstrap). Use notação com ponto para acessar chaves aninhadas:
// Lê arquivos da pasta config/ na raiz do projeto
$nome = config('app.server.name');
$moedas = config('user.coins');
$tudo = config(); // array completoVeja Config.
session()
Acessa e manipula dados da sessão do visitante:
// Ler valor
$userId = session('user_id');
// Objeto com métodos
session()->set('foo', 'bar');
session()->has('foo');
session()->forget('foo');
session()->token(); // token CSRF
session()->regenerate(); // nova ID de sessãorequest() / req()
Obtém dados enviados pelo navegador (formulários, JSON, parâmetros da URL):
$req = request(); // objeto completo
$email = request('email'); // input GET/POST/JSON
$id = request()->route('id'); // parâmetro da URL {id}Detalhes em Request.
res()
Monta respostas: mensagens de sucesso/erro, redirecionamentos e JSON:
return res()->success('Salvo com sucesso!')->back();
return res()->warning('Preencha todos os campos.')->back();
return res()->json(['items' => $items], 200);Veja Response.
view() e layout()
view() renderiza um arquivo de template e devolve HTML.layout() define qual layout envolve a próxima página:
// Renderizar partial (sem layout)
echo view('_components.web.sidebar');
// Definir layout para próxima renderização
layout('_layouts.app', ['menu' => $menu]);old() e validation_errors()
Quando um formulário falha na validação, old() traz o valor que o usuário digitou:
<input type="email" name="email" value="<?= e(old('email')) ?>">
<?php if (error('email')): ?>
<span><?= e(error('email')) ?></span>
<?php endif; ?>flash_message() devolve ['type' => 'success', 'message' => '...'] ou null— use no componente de alerta.
collect()
Transforma um array em uma coleção com métodos úteis (filter, pluck, map):
$nums = collect([1, 2, 3, 4]);
$pares = $nums->filter(fn ($n) => $n % 2 === 0);plug() e module()
plug() chama um método de handler de módulo e retorna dados (para widgets na home, sidebars, etc.):
$posts = plug('post::web@index');
$rankings = plug('hall_fame::home@rankings');module() é um atalho mais flexível — aceita handler, view de módulo ou view global:
module('shop@index'); // chama handler
module('shop:admin.index'); // renderiza view
module('user.panel'); // view do temaCaminhos e URLs
base_path(); // raiz do projeto
app_path('modules/shop'); // pasta app/
public_path('css/app.css');
base_url('api/status'); // URL completa do sitecache()
Armazena dados temporários em arquivo para evitar consultas repetidas:
cache()->put('ranking_home', $data, 300); // 300 segundos
$dados = cache()->get('ranking_home');