[原创]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 相关文章推荐
类的另类用法--数据的封装
Oct 09 PHP
PHP 批量删除 sql语句
Jun 05 PHP
php 强制下载文件实现代码
Oct 28 PHP
PHP实现一维数组转二维数组的方法
Feb 25 PHP
php给图片添加文字水印方法汇总
Aug 27 PHP
为你总结一些php系统类函数
Oct 21 PHP
PHP文件上传问题汇总(文件大小检测、大文件上传处理)
Dec 24 PHP
CI(Codeigniter)的Setting增强配置类实例
Jan 06 PHP
php+jquery+html实现点击不刷新加载更多的实例代码
Aug 12 PHP
php 运算符与表达式详细介绍
Nov 30 PHP
由php中字符offset特征造成的绕过漏洞详解
Jul 07 PHP
Laravel框架基于ajax实现二级联动功能示例
Jan 17 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
长波有什么东西
2021/03/01 无线电
PHP中基本符号及使用方法
2010/03/23 PHP
用php的ob_start来生成静态页面的方法分析
2011/03/09 PHP
php中使用PHPExcel读写excel(xls)文件的方法
2014/09/15 PHP
JavaScript判断变量是否为undefined的两种写法区别
2013/12/04 Javascript
用Jquery实现滚动新闻
2014/02/12 Javascript
js脚本分页代码分享(7种样式)
2015/08/19 Javascript
再谈Javascript中的基本类型和引用类型(推荐)
2016/07/01 Javascript
html、css和jquery相结合实现简单的进度条效果实例代码
2016/10/24 Javascript
JavaScript数组复制详解
2017/02/02 Javascript
Node.JS 循环递归复制文件夹目录及其子文件夹下的所有文件
2017/09/18 Javascript
详解javascript常用工具类的封装
2018/01/30 Javascript
深入浅析Vue.js计算属性和侦听器
2018/05/05 Javascript
浅谈JS中几种轻松处理'this'指向方式
2019/09/16 Javascript
JS一次前端面试经历记录
2020/03/19 Javascript
jQuery cookie的公共方法封装和使用示例
2020/06/01 jQuery
[02:22]2018DOTA2亚洲邀请赛VG赛前采访
2018/04/03 DOTA
50行代码实现贪吃蛇(具体思路及代码)
2013/04/27 Python
在PyCharm环境中使用Jupyter Notebook的两种方法总结
2018/05/24 Python
python计算两个矩形框重合百分比的实例
2018/11/07 Python
Python中那些 Pythonic的写法详解
2019/07/02 Python
python实现登录密码重置简易操作代码
2019/08/14 Python
python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法
2019/08/27 Python
详解selenium + chromedriver 被反爬的解决方法
2020/10/28 Python
美国气象仪器、花园装饰和墙壁艺术商店:Wind & Weather
2019/05/29 全球购物
Onzie官网:美国时尚瑜伽品牌
2019/08/21 全球购物
Crocs欧洲官网:Crocs Europe
2020/01/14 全球购物
信号量和自旋锁的区别?如何选择使用?
2015/09/08 面试题
音乐表演专业毕业生求职信
2013/10/14 职场文书
总裁秘书岗位职责
2013/12/04 职场文书
教师求职信范文
2014/05/24 职场文书
大四毕业生自荐书
2014/07/05 职场文书
注册资产评估专业求职信
2014/07/16 职场文书
2015中秋节慰问信范文
2015/03/23 职场文书
公司借条范本
2015/05/25 职场文书
SQL实现LeetCode(177.第N高薪水)
2021/08/04 MySQL