Folour, Мне вообщем всёровно но подкупило немного "писать по короче придется"
Folour, Мне вообщем всёровно но подкупило немного "писать по короче придется"
Зачем там вообще обьект нужен? Вот тут такое вот сделал: http://pastebin.com/DmSRpP6M
Х.з работает ли, я не проверял.
Как посчитать число запросов к базе данных при генерации страницы?
Пользуюсь mysqli::query
Blade, есть же stat
KMysqli Object
(
[affected_rows] => 0
[client_info] => mysqlnd 5.0.10 - 20111026 - $Id: e707c415db32080b3752b232487a435ee0372157 $
[client_version] => 50010
[connect_errno] => 0
[connect_error] =>
[errno] => 0
[error] =>
[error_list] => Array
(
)
[field_count] => 0
[host_info] => 127.0.0.1 via TCP/IP
[info] =>
[insert_id] => 0
[server_info] => 5.5.34-log
[server_version] => 50534
[stat] => Uptime: 1262 Threads: 1 Questions: 2 Slow queries: 0 Opens: 33 Flush tables: 1 Open tables: 26 Queries per second avg: 0.001
[sqlstate] => 00000
[protocol_version] => 10
[thread_id] => 1
[warning_count] => 0
) # Koenig (02.05.2015 / 17:41)спасибо.
Blade, есть же stat
там общее число запросов с какого-то момента отображается? с обновлением страницы число Questions увеличвается
Blade, вроде как стартовал мускул
Жаль в pdo не храница кол. запросов
Пришлось делать так
<?php
class DB {
protected static $connection;
private static $instance = null;
private $querycount = 0;
private $querytime = 0.0;
public static function getInstance() {
if(is_null(self::$instance)) {
self::$instance = new DB;
}
return self::$instance;
}
public static function connection() {
if (is_null(static::$connection)) {
# Данные от бд
$dbcfg = [
'host' => 'localhost',
'name' => 'myblog',
'user' => 'root',
'pass' => ''
];
# Параметры подключения
$opt = [
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8",
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
];
try {
static::$connection = new PDO("mysql:host=".$dbcfg['host'].";dbname=".$dbcfg['name'], $dbcfg['user'], $dbcfg['pass'], $opt);
} catch (PDOException $e) {
throw new RuntimeException('Не удалось установить соединение с базой данных:%s'. $e->getMessage());
}
}
return static::$connection;
}
public static function prepare($sql, $values = null) {
$stime = microtime(true);
$sth = static::connection()->prepare($sql);
$sth->execute($values);
self::getInstance()->querytime += (microtime(true) - $stime);
self::getInstance()->querycount++;
return $sth;
}
public static function getQueryCount() {
return self::getInstance()->querycount;
}
public static function getQueryTime() {
return self::getInstance()->querytime;
}
public static function __callStatic($method, array $arguments ) {
return call_user_func_array([static::connection(), $method], $arguments);
}
}
?>class MyClass {
private $count;
public static function updateCount() {
self::$count++;
}
-------
MyClass::updateCount();class MyClass {
private static $count;
public function __construct(){
static::$count++;
}
}
-------
$a = new MyClass;
$b = new MyClass;
$c = new MyClass;
echo MyClass::$count;Delphinum, Мне надо переменную по несколько раз изменять, а статическую можно только раз, или нет?