如何关闭Mysql的报错

Youfeed

想处理的代码

$updated = Account::where(['uuid'=>$account])->update(['user'=>$user]);
return $updated ? [ 'code'=>200,'message'=>'更换别称成功' ] : throw new Exception('更换别称失败',124501);

代码已经在中间件中间进行了 try catch 进行统一处理错误格式了,我只需要处理 更新成功与失败即可

config/database.php 中

<?php
return  [
    'default' => 'mysql',
    'connections' => [
        'mysql' => [
            'driver'      => 'mysql',
            'host'        => ini("MYSQL.HOST",'172.29.93.44'), //10.0.4.16
            'port'        => ini("MYSQL.PORT",3306),
            'database'    => ini("MYSQL.DATABASE",'youloge'),
            'username'    => ini("MYSQL.USERNAME",'root'),
            'password'    => ini("MYSQL.PASSWORD",'123456'),
            'charset'     => 'utf8mb4',
            'collation'   => 'utf8mb4_general_ci',
            'prefix'      => '',
            'strict'      => false,
            'engine'      => null,
            'options'   => [
                PDO::ATTR_EMULATE_PREPARES => false, // Must be false for Swoole and Swow drivers.
            ],
            'pool' => [
                'max_connections' => 5,
                'min_connections' => 1,
                'wait_timeout' => 3,
                'idle_timeout' => 60,
                'heartbeat_interval' => 50,
            ],
        ],
    ],
];

配置文件里面有个 options 选项可以配置 数据库参数找到错误处理,进行配置

'options'   => [
    PDO::ATTR_EMULATE_PREPARES => false,
    PDO::ATTR_ERRMODE => false
],

参考地址: https://www.php.net/manual/en/pdo.setattribute.php
PDO::ATTR_ERRMODE // PDO的错误报告模式。可以采用以下值之一:

如果还要其他,贴下你分分享

88 0 0
0个评论

Youfeed

190
积分
0
获赞数
0
粉丝数
2022-11-03 加入
🔝