larval 如何捕获mysql错误
larval捕获mysql错误的方法:1、使用errorInfo变量返回SQLSTATE错误和消息;2、使用异常处理程序“app/Exceptions/Handler.php并侦听QueryExceptions”将所有SQL错误记录到数据。
推荐:《mysql视频教程》
Laravel使用PDO,因此您可以使用errorInfo变量返回SQLSTATE错误和消息。基本上,您需要使用$e->errorInfo;
如果要将所有SQL错误记录到数据库中,可以使用异常处理程序(app/Exceptions/Handler.php并侦听QueryExceptions。像这样的:public function render($request, Exception $e)
{
switch ($e) {
case ($e instanceof \Illuminate\Database\QueryException):
LogTracker::saveSqlError($e);
break;
default:
LogTracker::saveError($e, $e->getCode());
}
return parent::render($request, $e);
}
然后你可以用这样的东西:public function saveSqlError($exception)
{
$sql = $exception->getSql();
$bindings = $exception->getBindings()
// Process the query's SQL and parameters and create the exact query
foreach ($bindings as $i => $binding) {
if ($binding instanceof \DateTime) {
$bindings[$i] = $binding->format('\'Y-m-d H:i:s\'');
} else {
if (is_string($binding)) {
$bindings[$i] = "'$binding'";
}
}
}
$query = str_replace(array('%', '?'), array('%%', '%s'), $sql);
$query = vsprintf($query, $bindings);
// Here's the part you need
$errorInfo = $exception->errorInfo;
$data = [
'sql' => $query,
'message' => isset($errorInfo[2]) ? $errorInfo[2] : '',
'sql_state' => $errorInfo[0],
'error_code' => $errorInfo[1]
];
// Now store the error into database, if you want..
// ....
}
larval 如何捕获mysql错误的教程已介绍完毕,更多请关注跳墙网其他文章教程!
larval 如何捕获mysql错误相关教程
php如何实现类
php实现类的方法是:【class 类名{ }】,如【?php class Student { }】。类是由属性、方法、常量组成的,类名以字母、下划线开头,后面跟字母、数字、下划线。 在PHP中实现类和对象 (学习视频推荐:java课程) 1、创建类 语法: class 类名{//属性//方法//
php如何实现utf8转gbk
php实现utf8转gbk的方法:首先创建一个PHP示例文件;然后设置header头;最后通过“iconv(UTF-8,gbk//TRANSLIT,$str);”将字符串的编码从UTF8转到GB2312即可。 推荐:《PHP视频教程》 php把utf8转换为gbk 代码如下: ?phpheader(Content-type:text/html;chars
php如何实现json转字符串
在php中可以使用json_decode函数实现json转字符串,该函数的作用就是对JSON格式的字符串进行解码,其使用语法是“json_decode ( string $json [, bool $assoc...]) ”。 推荐:《PHP视频教程》 json_decode — 对 JSON 格式的字符串进行解码 说明 json_decod
qt5.8如何连接mysql
qt5.8连接mysql的方法:首先编译生成mysql的驱动;然后下载“libmysql.dll”库,并将其放在Qt的bin文件夹下;最后创建连接代码文件进行测试即可。 推荐:《mysql视频教程》 qt5.8连接mysql数据库 Qt Creator下连接mysql的解决办法。下面以qt5.8.0、mysql5.7.
docker如何正确部署web项目呢
具体步骤如下: (推荐教程:docker教程) 一:随便创建目录dock,准备好如下文件: 二、编写Dockerfile,通过它能快速地构建docker镜像 vi Dockerfile 新增如下配置 FROM centosMAINTAINER this is dock image jshADD jdk1.8.0_191 /usr/local/javaENV JAVA
Composer如何强制重新安装包
下面由 composer 教程栏目给大家介绍Composer强制重新安装包的方法,希望对需要的朋友有所帮助! php下composer 可以使用如下命令重新安装依赖包: composer install --prefer-source 相关介绍: Composer 是 PHP 的一个依赖管理工具。我们可以在项目中声明所
如何让 WordPress 支持 WebP格式图片
下面由 WordPress教程 栏目给大家介绍让 WordPress 支持 WebP格式图片的办法,希望对需要的朋友有所帮助! WordPress 默认不支持WebP格式图片上传,将下面代码添加到当前主题函数模板functions.php中,即可解决上传问题。 function webp_filter_mime_types( $
如何通过宝塔面板实现MySQL性能简单调优
下面由 宝塔 教程栏目给大家介绍如何通过宝塔面板实现MySQL性能简单调优,希望对需要的朋友有所帮助! 在PHP+MYSQL架构网站运行过程中,往往会遇到各种性能问题影响,如MySQL、PHP、CPU、磁盘IO、缓存等,其中MySQL瓶颈就是最常见也最难解决的一种影响网站性