示例#1
0
文件: LoggerTest.php 项目: jivoo/core
 public function testAddHandler()
 {
     $handler = $this->getMockForAbstractClass('Jivoo\\Log\\HandlerBase', [LogLevel::INFO]);
     $handler->expects($this->exactly(3))->method('handle');
     $log = new Logger();
     $log->emergency('foo1');
     $log->alert('foo2');
     $log->debug('foo3');
     $log->addHandler($handler);
     $log->info('foo4');
     $log->debug('foo5');
 }
示例#2
0
文件: example1.php 项目: jivoo/data
// Example: Using dynamic table definitions
use Jivoo\Data\Database\DatabaseDefinitionBuilder;
use Jivoo\Data\Database\DatabaseSchema;
use Jivoo\Data\Database\Loader;
use Jivoo\Data\DefinitionBuilder;
use Jivoo\Log\CallbackHandler;
use Jivoo\Log\Logger;
// Include Jivoo by using composer:
require '../vendor/autoload.php';
// Initialize database loader
$loader = new Loader();
// Log database queries to output
$logger = new Logger();
$logger->addHandler(new CallbackHandler(function (array $record) {
    if (isset($record['context']['query'])) {
        echo 'query: ' . $record['context']['query'] . PHP_EOL;
    }
}));
$loader->setLogger($logger);
// Initialize definition for User-table
$definition = new DatabaseDefinitionBuilder();
$definition->addDefinition('User', DefinitionBuilder::auto(['username', 'created']));
// Connect to database
$schema = new DatabaseSchema($loader->connect(['driver' => 'PdoMysql', 'server' => 'localhost', 'username' => 'jivoo', 'database' => 'jivoo'], $definition));
echo '<pre>';
// Get data for root user:
print_r($schema->User->where('username = %s', 'root')->first()->getData());
// List names of users created after 2015-01-01
$users = $schema->User->where('created > %d', '2015-01-01')->orderBy('created');
foreach ($users as $user) {
    echo $user->username . PHP_EOL;