Error Non-static method Redis::set() cannot be called statically.

Error Non-static method Redis::set() cannot be called statically

O erro Error Non-static method Redis::set() cannot be called statically acontece pelo motivo de no Laravel moderno, a facade Redis não é o mesmo que a classe do PECL Redis. O correto é usar a facade do Laravel:

✅ Maneira correta:

use Illuminate\Support\Facades\Redis;

Redis::set('teste', 'ok');
$value = Redis::get('teste');

Ou diretamente no Tinker:

>>> \Illuminate\Support\Facades\Redis::set('teste', 'ok');
>>> \Illuminate\Support\Facades\Redis::get('teste');

Explicação:

Acontecendo Error Non-static method Redis::set() cannot be called statically, fique de olho, pois o Redis do PECL é uma classe PHP pura e não possui métodos estáticos como set() — você teria que instanciar:

$redis = new Redis();
$redis->connect('redis', 6379);
$redis->set('teste', 'ok');

Laravel fornece a facade Redis, que é estática e já configurada pelo config/database.php