我想制作一个数据库还原功能,该功能将解析用phpMyAdmin进行的转储并执行所有查询。

我已经有一个执行查询的MySQL类,但它只知道如何执行单个查询。我正在寻找一种将文件内容拆分为单个查询的方法。

我尝试玩preg_split ...,但没有设法使其起作用。

$queries = preg_split('/[(.+);\s*\n/', $content, -1, PREG_SPLIT_NO_EMPTY);


我对正则表达式不太满意。有什么办法可以实现我的目标?

最佳答案

不要尝试使用正则表达式解析sql。如果sql字符串中某处有;怎么办?

我会尝试http://pear.php.net/package/SQL_Parser或其中的任何other php mysql parsers。另请参见PHP MySQL SQL parser (INSERT and UPDATE)

关于php - MySQL的PHP​​分割multiquery字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/689257/

10-13 08:13
查看更多