跳至
[1]
[全屏预览]
/** * 加载sql文件为分号分割的数组 * 支持存储过程和函数提取,自动过滤注释 * @param string $path 文件路径 * @return boolean|array * @since 1.0 <2015-5-27> SoChishun Added. */ function load_sql_file($path, $fn_splitor = ';;') { if (!file_exists($path)) { return false; } $lines = file($path, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); $arr = false; $str = ''; $skip = false; $fn = false; foreach ($lines as $line) { $line = trim($line); // 过滤注释 if (!$line || 0 === strpos($line, '--') || 0 === strpos('*') || 0 === strpos($line, '/*') || (false !== strpos($line, '*/') && strlen($line) == (strpos($line, '*/') + 2))) { if (!$skip && 0 === strpos($line, '/*')) { $skip = true; } if ($skip && false !== strpos($line, '*/') && strlen($line) == (strpos($line, '*/') + 2)) { $skip = false; } continue; } if ($skip) { continue; } // 提取存储过程和函数 if (0 === strpos($line, 'DELIMITER ' . $fn_splitor)) { $fn = true; continue; } if (0 === strpos($line, 'DELIMITER ;')) { $fn = false; $arr[] = $str; $str = ''; continue; } if ($fn) { $str.=$line . ' '; continue; } // 提取普通语句 $str.=$line; if (false !== strpos($line, ';') && strlen($line) == (strpos($line, ';') + 1)) { $arr[] = $str; $str = ''; } } return $arr; }
声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章
Windows 11 KB5054979中的新功能以及如何解决更新问题
1 个月前ByDDD
如何修复KB5055523无法在Windows 11中安装?
3 周前ByDDD
如何修复KB5055518无法在Windows 10中安装?
3 周前ByDDD
R.E.P.O.的每个敌人和怪物的力量水平
3 周前By尊渡假赌尊渡假赌尊渡假赌
蓝王子:如何到达地下室
3 周前ByDDD

热工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

SublimeText3 Linux新版
SublimeText3 Linux最新版

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境