app/Providers/AppServiceProvider.php
<?php
namespace App\Providers;
use Blade;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\DB;
use Illuminate\Contracts\Logging\Log;
class AppServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
Blade::directive('currency', function ($x) {
return "<?php if (round((float)$x, 2)) { echo number_format(round((float)$x, 2), 2); } ?>";
});
Blade::directive('currency_with_zero', function ($x) {
return "<?php echo number_format(round((float)$x, 2), 2); ?>";
});
Blade::directive('selector', function ($x) {
return "<?php echo 'ac-' . strtr($x, '.', '-'); ?>";
});
DB::listen(
function ($sql) {
// $sql is an object with the properties:
// sql: The query
// bindings: the sql query variables
// time: The execution time for the query
// connectionName: The name of the connection
// To save the executed queries to file:
// Process the sql and the bindings:
foreach ($sql->bindings as $i => $binding) {
if ($binding instanceof \DateTime) {
$sql->bindings[$i] = $binding->format('\'Y-m-d H:i:s\'');
} else {
if (is_string($binding)) {
$sql->bindings[$i] = "'{$binding}'";
}
}
}
// Insert bindings into query
$query = str_replace(array('%', '?'), array('%%', '%s'), $sql->sql);
$query = vsprintf($query, $sql->bindings);
\Log::debug($query);
\Log::debug($sql->time . ' ms' . PHP_EOL . PHP_EOL);
}
);
}
/**
* Register any application services.
*
* @return void
*/
public function register()
{
//
}
}

















