jdorn/sql-formatter 是一个轻量级的 PHP 类用于格式化 SQL 语句。
它支持自动进行缩进、添加换行,甚至还支持语法高亮。
composer require jdorn/sql-formatter
作为扩展包使用
SqlFormatter 类包含一个名为 format 的静态方法,它可以接收一个 SQL 语句字符串作为参数,并返回格式化后使用 pre 标签包裹的 HTML 代码。
例如:
<?php
require_once('SqlFormatter.php');
$query = "SELECT * FROM `contacts` LIMIT 0, 1000";
echo SqlFormatter::format($query);
输出的源代码
<pre style="color: black; background-color: white;"><span style="font-weight:bold;">SELECT</span>
<span>*</span>
<span style="font-weight:bold;">FROM</span>
<span style="color: purple;">`contacts`</span>
<span style="font-weight:bold;">WHERE</span>
<span style="color: green;">1</span> <span>=</span> <span style="color: green;">1</span>
<span style="font-weight:bold;">ORDER BY</span>
<span style="color: #333;">id</span> <span style="font-weight:bold;">desc</span>
<span style="font-weight:bold;">LIMIT</span>
<span style="color: green;">0</span><span>,</span> <span style="color: green;">1000</span></pre>
输出展示
只格式化不高亮
若是不需要高亮,只需要添加缩进和换行,请将第二个参数设置为 false 即可。
适用于输出错误日志或者其它非 HTML 数据时。
<?php
echo SqlFormatter::format($query, false);
输出展示
原文作者:Wi1dcard (略有改动)
转自链接:https://learnku.com/articles/22230#57816d
原文使用插件源代码github README 有详细的使用说明 https://github.com/jdorn/sql-formatter#why-not-regular-expressions