我正在编写一个 PHP 脚本来将主题从旧论坛站点迁移到新站点。
- 旧论坛站点使用数据库“old_forums”
- Thew 新论坛站点使用数据库“new_forums”
- MySQL 用户“论坛”拥有两个数据库的所有权限(为方便起见,我使用 1 个单用户,但如果需要,使用 2 个不同的用户不会有任何问题)
我将两个论坛都托管在同一主机上 - localhost
脚本我有以下结构
<?php
class Forum {
//constants
const HOST = "localhost";
const DB_USER = "forums";
const DB_PASS = "forums";
...
//properties e.g. topic title, topic content
}
class OldForum extends Forum {
const DB_NAME_OLD = "old_forums";
public static function exportTopics() {
//some code
}
}
class NewForum extends Forum {
const DB_NAME_NEW = "new_forums";
public static function importTopics() {
//some code
}
}
OldForum::exportTopics();
NewForum::importTopics();
?>
我知道我在这里混合了过程和面向对象的编程 PHP (OOPP)。我是面向对象的 PHP 新手,但是(我有 Java 经验,所以我非常愿意接受一些指南来制作这个纯 OOPP)
我想为 OldForum 和 NewForum 类使用 1 个单一的 MySQL 连接。
我应该在哪里实例化 mysqli 对象?
例如,在 Forum 类的构造函数中,或者有一个新的 mysqli 对象作为 Forum 类的属性,
这样我就可以创建一个新的 Forum 对象来启动 MySQL 连接
$a_forum = new Forum();