コード例 #1
0
ファイル: Models.php プロジェクト: essif/fadls-vaip
 function __construct($dbhost, $dbuser, $dbpswd, $dbname)
 {
     // assert that the resources we need are there
     if (!defined('MODELS')) {
         die;
     }
     // Model-specs
     require_once MODELS . '/UserFactory.php';
     require_once MODELS . '/EmployeeFactory.php';
     /*
     require_once 'Shifts.php';
             require_once 'Schemas.php';
     */
     // Database
     $this->dbhost = $dbhost;
     $this->dbuser = $dbuser;
     $this->dbpswd = $dbpswd;
     $this->dbname = $dbname;
     mysql_connect($this->dbhost, $this->dbuser, $this->dbpswd, $this->dbname);
     mysql_select_db($this->dbname);
     // User
     $this->user = null;
     if (isset($_SESSION['user_id'])) {
         $this->user = UserFactory::create($_SESSION['user_id']);
     } elseif (isset($_COOKIE['user_id']) && isset($_COOKIE['email']) && isset($_COOKIE['password'])) {
         $user = UserFactory::create($_COOKIE['user_id']);
         if ($user->getEmail() == $_COOKIE['email'] && $user->getPassword() == $_COOKIE['password']) {
             $_SESSION['user_id'] = $user->getUserId();
             $this->user = $user;
         }
     }
 }
コード例 #2
0
ファイル: Factory1.php プロジェクト: cdandy/code-lib
<?php

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
interface IUser
{
    function getName();
}
class User implements IUser
{
    public function __construct($id)
    {
    }
    public function getName()
    {
        return "Jack";
    }
}
class UserFactory
{
    public static function create($id)
    {
        return new User($id);
    }
}
$uo = UserFactory::create(1);
echo $uo->getName() . "\n";