$config = array(
'directory' => $directory,
'host' => 'localhost',
'username' => 'username',
'password' => 'password',
'database' => 'database'
);
public function importSqlFiles($config) {
// 创建MySQL连接
$mysqli = new mysqli($config['host'], $config['username'], $config['password'], $config['database']);
if ($mysqli->connect_error) {
die("连接数据库失败: " . $mysqli->connect_error);
}
//设置字符编码
$mysqli->set_charset("utf8mb4");
// 获取目录中所有的.sql文件
$files = glob($config['directory'] . "/*.sql");
foreach ($files as $file) {
// 读取.sql文件内容
$sql = file_get_contents($file);
// 执行SQL语句
if (!$mysqli->multi_query($sql)) {
//若导入失败
return false;
}
// 清空结果集
while ($mysqli->more_results() && $mysqli->next_result()) {
$discard = $mysqli->use_result();
if ($discard instanceof mysqli_result) {
$discard->free();
}
}
}
// 关闭MySQL连接
$mysqli->close();
return true;
}
函数简述:
- 函数可以将指定目录下的所有.sql文件遍历导入数据库
- 函数接收一个数组变量$config,数组变量最上面已经给出,数组中包括.sql文件的目录,数据库名称,数据库地址,用户名,用户密码5个参数
- 函数返回布尔值,导入成功返回true,反之则返回false