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)); }
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)); } }
<?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";
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)'); }