Is this the correct approach to an OOP design structure in php?
- by Silver89
I'm converting a procedural based site to an OOP design to allow more easily manageable code in the future and so far have created the following structure:
/classes
/templates
index.php
With these classes:
ConnectDB
Games
System
User
User -Moderator
User -Administrator
In the index.php file I have code that detects if any $_GET values are posted to determine on which page content to build (it's early so there's only one example and no default):
function __autoload($className) {
require "classes/".strtolower($className).".class.php";
}
$db = new Connect;
$db->connect();
$user = new User();
if(isset($_GET['gameId']))
{
System::buildGame($gameId);
}
This then runs the BuildGame function in the system class which looks like the following and then uses gets in the Game Class to return values, such as $game->getTitle() in the template file template/play.php:
function buildGame($gameId){
$game = new Game($gameId);
$game->setRatio(900, 600);
require 'templates/play.php';
}
I also have .htaccess so that actual game page url works instead of passing the parameters to index.php
Are there any major errors of how I'm setting this up or do I have the general idea of OOP correct?