[原创]PHP实现SQL语句格式化功能的方法


Posted in PHP onJuly 28, 2017

本文实例讲述了PHP实现SQL语句格式化功能的方法。分享给大家供大家参考,具体如下:

一、问题:

要求使用php实现针对sql语句的格式化功能

二、解决方法:

这里使用github上的开源代码实现SQL格式化功能。

github下载地址:https://github.com/till/sql-formatter

或者点击此处本站下载

使用方法:

include包含SqlFormatter.php文件,针对sql语句使用format方法即可实现格式化功能。

具体代码如下:

<?php
include('SqlFormatter.php');
$sql="SELECT DATE_FORMAT(b.t_create, '%Y-%c-%d') dateID, b.title memo
  FROM (SELECT id FROM orc_scheme_detail d WHERE d.business=208
  AND d.type IN (29,30,31,321,33,34,3542,361,327,38,39,40,41,42,431,4422,415,4546,47,48,'a',
  29,30,31,321,33,34,3542,361,327,38,39,40,41,42,431,4422,415,4546,47,48,'a')
  AND d.title IS NOT NULL AND t_create >=
  DATE_FORMAT((DATE_SUB(NOW(),INTERVAL 1 DAY)),'%Y-%c-%d') AND t_create
  < DATE_FORMAT(NOW(), '%Y-%c-%d') ORDER BY d.id LIMIT 2,10) a,
  orc_scheme_detail b WHERE a.id = b.id";
echo SqlFormatter::format($sql);
?>

运行结果如下图所示:

[原创]PHP实现SQL语句格式化功能的方法

PS:更多的用法还可参考源码中的examples.php示例

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP4中实现动态代理
Oct 09 PHP
PHP中对数据库操作的封装
Oct 09 PHP
PHP类的使用 实例代码讲解
Dec 28 PHP
php实现天干地支计算器示例
Mar 14 PHP
phpMyAdmin自动登录和取消自动登录的配置方法
May 12 PHP
php跨站攻击实例分析
Oct 28 PHP
用php守护另一个php进程的例子
Feb 13 PHP
WordPress分页伪静态加html后缀
Jun 08 PHP
ThinkPHP使用getlist方法实现数据搜索功能示例
May 08 PHP
php实现每日签到功能
Nov 29 PHP
PHP配置ZendOpcache插件加速
Feb 14 PHP
PHP的JSON封装、转变及输出操作示例
Sep 27 PHP
使用php自动备份数据库表的实现方法
Jul 28 #PHP
PHP自定义函数判断是否为Get、Post及Ajax提交的方法
Jul 27 #PHP
PHP 7安装使用体验之性能大提升,兼容性强,扩展支持不够(升级PHP要谨慎)
Jul 27 #PHP
laravel 5.4中实现无限级分类的方法示例
Jul 27 #PHP
SCP远程VPS快速搬家和WDCP升级php5.3安装memcached和eaccelerator教程
Jul 27 #PHP
PHP实现的Redis多库选择功能单例类
Jul 27 #PHP
PHP策略模式定义与用法示例
Jul 27 #PHP
You might like
全国FM电台频率大全 - 22 重庆市
2020/03/11 无线电
菜鸟学PHP之Smarty入门
2007/01/04 PHP
Ajax+PHP快速上手及简单应用说明
2013/07/24 PHP
Symfony2实现在doctrine中内置数据的方法
2016/02/05 PHP
php基于mcrypt_encrypt和mcrypt_decrypt实现字符串加密解密的方法
2016/07/12 PHP
php四种定界符详解
2017/02/16 PHP
Laravel-添加后台模板AdminLte的实现方法
2019/10/08 PHP
php正则表达式使用方法整理集合
2020/01/31 PHP
CentOS7系统搭建LAMP及更新PHP版本操作详解
2020/03/26 PHP
js innerHTML 的一些问题的解决方法
2008/06/22 Javascript
引用其它js时如何同时处理多个window.onload事件
2014/09/02 Javascript
javascript的switch用法注意事项分析
2015/02/02 Javascript
JavaScript字符串常用类使用方法汇总
2015/04/14 Javascript
JS实现的3D拖拽翻页效果代码
2015/10/31 Javascript
JavaScript阻止回车提交表单的方法
2015/12/30 Javascript
jQuery根据表单name获取值的方法
2016/05/24 Javascript
Bootstrap3 内联单选和多选框
2016/12/29 Javascript
js原生Ajax的封装和原理详解
2017/03/11 Javascript
微信小程序后台解密用户数据实例详解
2017/06/28 Javascript
Vue2.0如何发布项目实战
2017/07/27 Javascript
jQuery实现简单的下拉菜单导航功能示例
2017/12/07 jQuery
深入了解JavaScript 的 WebAssembly
2019/06/15 Javascript
js实现图片区域可点击大小随意改变(适用移动端)代码实例
2019/09/11 Javascript
[53:10]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs VG 第一场
2018/04/11 DOTA
[00:06]Yes,it worked!小卡尔成功穿越时空加入战场!
2019/07/20 DOTA
Python 爬虫学习笔记之单线程爬虫
2016/09/21 Python
django用户注册、登录、注销和用户扩展的示例
2018/03/19 Python
Django Rest framework之权限的实现示例
2018/12/17 Python
Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)
2020/04/08 Python
微软俄罗斯官方网站:Microsoft俄罗斯
2016/09/18 全球购物
刚毕业大学生自荐信范文
2014/02/20 职场文书
群众路线剖析材料
2014/09/30 职场文书
2014年保洁员工作总结
2014/11/19 职场文书
python实现网络五子棋
2021/04/11 Python
使用pycharm运行flask应用程序的详细教程
2021/06/07 Python
SQLServer中exists和except用法介绍
2021/12/04 SQL Server