for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Socialblue\LaravelQueryAdviser\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\DB;
use Socialblue\LaravelQueryAdviser\Helper\QueryBuilderHelper;
/**
* Class QueryController
* @package Socialblue\LaravelQueryAdviser\Http\Controllers
*/
class QueryController extends Controller
{
* Execute query
public function exec(string $sessionKey, string $time, string $timeKey, Request $request): array
$request
If this is a false-positive, you can also ignore this issue in your code via the ignore-unused annotation
ignore-unused
public function exec(string $sessionKey, string $time, string $timeKey, /** @scrutinizer ignore-unused */ Request $request): array
This check looks for parameters that have been defined for a function or method, but which are not used in the method body.
$data = Cache::get($sessionKey);
if (isset($data[$time][$timeKey])) {
$query = $data[$time][$timeKey];
return DB::connection()->select($query['rawSql'], $query['bindings']);
}
return [];
* Use explain for query
public function explain(string $sessionKey, string $time, string $timeKey, Request $request): array
public function explain(string $sessionKey, string $time, string $timeKey, /** @scrutinizer ignore-unused */ Request $request): array
return QueryBuilderHelper::analyze($query['rawSql'], $query['bindings']);
return [
'queryParts' => "",
'query' => "",
'optimized' => "",
];
This check looks for parameters that have been defined for a function or method, but which are not used in the method body.