Внесу свои пять копеек.
Во-первых, все выглядит достаточно дерьмового. А теперь к сути.
1. Хромает именование функций и их действие:
a. Если называешь методы максимально абстрактно, то они и должны выполнять абстрактные вещи, у тебя конкретные действия
b. mySerialize из той же оперы что и mySuperUltraMegaMethodConcat2String
c. getFromDb - вообще нихрена не ясно, что делает функция, название метода должно отражать ее сущность. Этот метод можно переименовать в
getById
2. Не вижу ооп, вижу сплошной статик, который равнозначен функциональщине.
У тебя в сингтоне должно получиться что-то типа этого
class Tree
{
private $inst;
__const() {
return $inst === null ? new self : $inst;
}
public function getById($id) {
return TreeModel::find($id);
}
public function TreeSectionExist($id) {
return !is_null($this->getById($id)) ? true : false;
}
$a = new Tree();
}
3. Не комментируйте очевидное
//Запись в БД
self::saveToDb();
Картинка с николасом кейджам.jpg