Napisałem takie "coś" i mam nadzieję że jest to klasopodobne. Proszę o opinie, dobrze myślę czy też nie. Osobiście mam wrażenie że zamknełem kod strukturalny w klasie i nic więcej. Aczkolwiek szukając w internecie ciężko jest trafić na coś zrozumiałego. W większości spotkykam się z informacją co to jest klasa i jak ją stworzyć, dziedziczenie czy parę słów o hermetyzacji.. ;(
Proszę Was również o możliwe przykłady klas, nie zbyt skomplikowanych lecz ukazujących myślenie obiektowe, jeżeli takowa znacie

<?php
class User
{
private $userid;
private $userName;
private $userEmail;
// Konstruktor pobiera dane uzytkownika, jezeli użytkonik nie jest zalogowany zglasza blad
public function __construct()
{
{
throw new Exception("BRAK DOSTEPU DO TEJ STRONY");
}
$this->GetUserData($_SESSION['user']);
}
// Pobiera dane użytkowników
public function GetUserData($id)
{
{
$result = DatabaseManager::selectBySQL("SELECT userName FROM users WHERE userName = $id LIMIT 1");
foreach ($result as $r)
{
$this->userName = $r['userName'];
$this->userEmail = $r['userEmail'];
}
}
}
// Loguje użytkonwika do serwisu
public function UserLogin($name, $pass)
{
$result = DatabaseManager::selectBySQL("SELECT userid FROM users WHERE userName = '$name' && userPass = md5('$pass') LIMIT 1");
if($result)
return $_SESSION['user'] = $result[0]['userid'];
else
return false;
}
// Wylogowanie użytkonika z bazy danych
public function UserLogout()
{
$_SESSION['user'] = false;
}
// Tworzy nowego użtykonika
static function SetNewUser
($user, $email, $pass, $pass2) {
// tworzymy polaczenie z baza danych
$db = DatabaseManager::getConnection();
// Sprawdzamy czy użytkownik istnieje
$checkUsers = $db->query("SELECT nick FROM users WHERE nick = $user");
if(count($checkUsers) >= 1
) return $msg = "Podana nazwa uzytkownika juz istnieje";
// Sprawdzamy czy podane hasła są jednakowe
if($pass == $pass2)
return $msg = "Podane hasła nie są jednakowe";
// Sprawdzamy poprawnosc adresu email
if(!filter_var($email, FILTER_VALIDATE_EMAIL))
return $msg = "Adres email jest nie poprawny";
// Wysyłamy użytkownika do bazy danych
$query = $db->query("INSERT INTO users (`id`,`nick`,`email`,`pass`) VALUES (NULL, '$user', '$email', 'md5($pass)');");
return $msg = false;
}
// Funkcja statyczna sprawdzajaca czy uzytkonik jest zalogowany
static function IsUserOnline
() {
if(isset($_SESSION['user']) && $_SESSION['user'] && is_numeric($_SESSION['user'])) return true;
else
return false;
}
}
?>
Pozdrawiam, Luke