Php-mysqli多次连接到数据库

标签 php mysql mysqli dbconnection

我有一个 MVC 框架,其工作原理如下:

/models/Mo_Sql.php (contains the connectdb function)
/models/Mo_ClassName1.php (that extends Mo_Sql)
/models/Mo_ClassName2.php (that extends Mo_Sql)
/models/Mo_ClassName...X.php (that extends Mo_Sql)
/models/... 

/rules/Ru_ClassName1.php (with private Mo_ClassName1)
/rules/Ru_ClassName2.php (with private Mo_ClassName2)
/rules/Ru_ClassName...X.php (with private Mo_ClassNameX)
/rules/Ru_......

/config/config.php with all Mo_ and Ru_ included and is called in every page of my site.

我担心的是,当我require_once config.php时,后者包含N个Mo_文件和N个Ru_文件,因此在构建时,我相信随着每个Mo_文件扩展Mo_Sql,将会打开多个数据库连接。

我的问题:这样进行有危险吗?是否有另一种方法只调用一次 Mo_SQL 和/或 Mo_Sql->connectdb?

感谢您的帮助

最佳答案

正如 Daniel 所说,理想情况下,您希望 MVC 中有一个中心点来处理数据库连接。这样,您就可以在整个项目中访问它,而且您还可以轻松跟踪一次运行的连接数量(当然最好只有一个)。

如果您碰巧正在使用框架,请寻找可以执行此类操作的预制库。最近的框架都有一些东西可以处理这个问题。

如果您只是在 native PHP 中创建自己的项目,那么您只需实现类似于 Daniel 所描述的行为即可。

关于Php-mysqli多次连接到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20471985/

相关文章:

php - 验证数据库日期和 JQuery 日期

php - 在mysql中保存数据但不能

php - mysqli_stmt 从 3 个表获取有限数据

php - Mysqli/PHP-显示具有特定值的行数/列中的总行数=百分比

php - 如何关闭动态组中的div?

php - 如何将用户通过 GET 输入发送的文本保存在 php 的单独文本文件中?

php - 如何从 CodeIgniter 中的目录文件夹中删除上传的图像

javascript - 根据单击的链接更改表格内容

php - laravel 数据库连接返回未定义索引错误

php - SQL 不同内连接