[原创]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 相关文章推荐
深入解析php模板技术原理【一】
Jan 10 PHP
Windows Apache2.2.11及Php5.2.9-1的安装与配置方法
Jun 08 PHP
php编程实现获取excel文档内容的代码实例
Jun 28 PHP
php提示undefined index的几种解决方法
May 21 PHP
php对csv文件的读取,写入,输出下载操作详解
Aug 10 PHP
你可能不知道PHP get_meta_tags()函数
May 12 PHP
php序列化函数serialize() 和 unserialize() 与原生函数对比
May 08 PHP
thinkPHP数据查询常用方法总结【select,find,getField,query】
Mar 15 PHP
thinkphp整合系列之极验滑动验证码geetest功能
Jun 18 PHP
php简单检测404页面的方法示例
Aug 23 PHP
PHP字符串与数组处理函数用法小结
Jan 07 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
Apr 05 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
PHP网页游戏学习之Xnova(ogame)源码解读(五)
2014/06/23 PHP
javascript引用对象的方法代码
2007/08/13 Javascript
JQuery实现倒计时按钮的实现代码
2012/03/23 Javascript
解决jquery版本冲突的有效方法
2014/09/02 Javascript
SpringMVC restful 注解之@RequestBody进行json与object转换
2015/12/10 Javascript
javascript 数组的定义和数组的长度
2016/06/07 Javascript
node.js + socket.io 实现点对点随机匹配聊天
2017/06/30 Javascript
使用DataTable插件实现异步加载数据
2017/11/19 Javascript
Nodejs处理异常操作示例
2018/12/25 NodeJs
javascript中数组的常用算法深入分析
2019/03/12 Javascript
BootStrap前端框架使用方法详解
2020/02/26 Javascript
vue中使用vue-print.js实现多页打印
2020/03/05 Javascript
浅析vue中的nextTick
2020/12/28 Vue.js
[55:03]LGD vs EG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
[59:32]Liquid vs Fnatic 2019国际邀请赛淘汰赛败者组BO1 8.20.mp4
2020/07/19 DOTA
用Python实现一个简单的能够上传下载的HTTP服务器
2015/05/05 Python
使用Django Form解决表单数据无法动态刷新的两种方法
2017/07/14 Python
Python基于Pymssql模块实现连接SQL Server数据库的方法详解
2017/07/20 Python
python利用lxml读写xml格式的文件
2017/08/10 Python
pycharm下打开、执行并调试scrapy爬虫程序的方法
2017/11/29 Python
对Python中画图时候的线类型详解
2019/07/07 Python
详解Python中的format格式化函数的使用方法
2019/11/20 Python
详解Python中的文件操作
2021/01/14 Python
css3实现超立体3D图片侧翻倾斜效果
2014/04/16 HTML / CSS
HTML5 与 XHTML2
2008/10/17 HTML / CSS
Kidsroom台湾:来自德国的婴儿用品
2017/12/11 全球购物
Spartoo荷兰:鞋子、包包和服装
2018/07/12 全球购物
自考生自我鉴定范文
2013/10/01 职场文书
文秘专业毕业生就业推荐信
2013/11/08 职场文书
三好学生自我鉴定
2013/12/17 职场文书
《曹刿论战》教学反思
2014/03/02 职场文书
党员干部一句话承诺
2014/05/30 职场文书
2014年财务人员工作总结
2014/11/11 职场文书
高一数学教学反思
2016/02/18 职场文书
原生JS中应该禁止出现的写法
2021/05/05 Javascript
Python探索生命起源 matplotlib细胞自动机动画演示
2022/04/21 Python