Skip to content
Parsing MySQL error messages to structured format
HTML PHP
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
patterns
src
tests
.gitattributes
.gitignore
LICENSE
composer.json
ecs.yaml
phpunit.xml.dist
readme.md

readme.md

MySQL error parser

This lib provides regex patterns for all mysql server errors from version 5.5 to 8.0.
It can be used for extracting detailed information from your mysql errors and future analisys.

Usage example

$connect = new \mysqli('localhost', 'root', '');
$result = $connect->query('select * from db.unknown_table');
if (!$result) {
    $parser = new \Solodkiy\MysqlErrorsParser\PatternMatcher();
    $structuredError = $parser->matchError($connect->errno, $connect->error);
    var_dump(
        $connect->error, 
        $structuredError->getTemplate(), 
        $structuredError->getParams()
    );
}

Result

string(38) "Table 'db.unknown_table' doesn't exist"
string(34) "Table '{db}.{table}' doesn't exist"
array(2) {
  'db' => string(2) "db"
  'table' => string(13) "unknown_table"
}

Install

composer require solodkiy/mysql-error-parser
You can’t perform that action at this time.