public static function connect() { $db = Krugozor_Database_Mysql::create(Settings::database_address, Settings::database_login, Settings::database_password)->setCharset('utf8')->setDatabaseName(Settings::database_name); return $db; }
<?php // Примеры использования Krugozor_Database_Mysql error_reporting(E_ALL | E_STRICT); header('Content-type: text/plain; charset=utf-8'); include './Mysql.php'; include './Mysql/Exception.php'; include './Mysql/Statement.php'; try { $db = Krugozor_Database_Mysql::create('localhost', 'root', '')->setCharset('utf8')->setDatabaseName('test'); // Создаем таблицу для тестирования. $db->query('DROP TABLE IF EXISTS users'); $db->query(' CREATE TABLE users( id int unsigned not null primary key auto_increment, name varchar(255), age tinyint, adress varchar(255) ) '); // Ради интереса раскоментируйте строку ниже и посмотрите на поведение режима MODE_STRICT на разных запросах // $db->setTypeMode(Krugozor_Database_Mysql::MODE_STRICT); // Основное: заполнители, преобразования и экранирование аргументов: // Для наглядности с помощью метода prepare() иллюстрируем поведение заполнителей на разных типах данных // Преобразования данных в integer (заполнитель ?i) $data = array(1, '2', '3+мусор', true, null); pr($data); result($db->prepare('?ai', $data)); // Преобразования данных во float (заполнитель ?p) $data = array(1, 2.2, '3.3', '4.4+мусор', true, null); pr($data);