示例#1
0
 protected function openSession($configClassesArray, $enableAutoload = false)
 {
     $config = $this->createConfigArray($configClassesArray, new PDO(MYSQL_DSN, MYSQL_USER, MYSQL_PASSWORD));
     $config['connection']['dialect'] = 'mysql';
     $config['proxies'] = array('autoload' => true);
     return Outlet::openSession(new OutletConfig($config));
 }
示例#2
0
 protected function openSession($configClassesArray, $enableAutoload = false)
 {
     if (!$enableAutoload) {
         return Outlet::openSession($this->createConfig($configClassesArray));
     } else {
         $config = $this->createConfigArray($configClassesArray);
         $config['proxies'] = array('autoload' => true);
         return Outlet::openSession(new OutletConfig($config));
     }
 }
示例#3
0
<?php

require_once 'config.php';
require '../classes/User.php';
$session = Outlet::openSession();
// Create
echo "Creating...\n";
$user = new User();
$user->ID = 1;
$user->Username = '******';
$session->save($user)->clear();
// Clears cache
echo "Created\n";
// Load
echo "Loading...\n";
$user = $session->load('User', 1);
echo "Loaded\n";
// Update
echo "Updating...\n";
$user->Username = '******';
$user = $session->flush()->clear()->load('User', 1);
// Reloads from DB
echo "Updated\n";
// Delete
echo "Deleting...\n";
$session->delete($user);
echo "Deleted\n";
示例#4
0
 protected function initialize()
 {
     require_once dirname(__FILE__) . '/../classes/outlet/Outlet.php';
     $this->pdo = new PDO('sqlite::memory:');
     $config = array('connection' => array('pdo' => $this->pdo, 'dialect' => 'sqlite'), 'classes' => array('User' => array('table' => 'users', 'props' => array('id' => array('id', 'int', array('pk' => true)), 'name' => array('name', 'varchar')), 'useGettersAndSetters' => false)));
     $config = new OutletConfig($config);
     $proxyGenerator = new OutletProxyGenerator($config);
     eval($proxyGenerator->generate());
     $this->outletSession = Outlet::openSession($config);
     $this->pdo->exec('CREATE TABLE users (id INTEGER, name TEXT)');
 }