[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как вывести статистику выполнения скрипта?
terret
Привет всем, есть два вопроса:
1) Как выводить кол-во запросов к БД, если я пользуюсь ООП, т.е. у меня есть класс для работы с БД:
PHP
class myquery{
    function sql_query ($req) {
        $result=mysql_query("$req");
        return $result;
    }
}

Если мне надо выполнить запрос к БД, то я просто пишу:
PHP
$result = myquery::sql_query("SELECT * FROM `table`");

Если бы это было "по-простому", то все легко, просто надо было бы ввести переменную num_query, и увеличивать ее на 1, при каждом запросе к БД, но тут ООП, и обращение к функции myquery::sql_query() может проходить из разных классов, и как держать в памяти глобальную переменную, я не знаю.
Вроде это надо делать через global, но у меня в УПОР не получается сделать ее глобальной, и чтобы она увеличивалась на 1 при каждом запросе((

2) И еще не нашел, как регистрировать, сколько памяти занимает скрипт при работе.

UPD: В общем, с вопросом БД мы разобрались, спасибо, а вот как посчитать, сколько памяти затрачено?

Заранее большое спасибо за помощь)



Спустя 43 минуты, 50 секунд (4.09.2009 - 18:00) Guest написал(а):
PHP
class myquery{
    private static 
num_query 0;
    function 
sql_query ($req) {
        
self::num_query++;
        
$result=mysql_query("$req");
        return 
$result;
    }
    function 
get_num_query()
    {
         return 
self::num_query;
     }
}

попробуй..

Спустя 8 секунд (4.09.2009 - 18:00) waldicom написал(а):
Насчет глобального значения... Можно попробовать сделать с помощью паттерна Одиночка (Singleton)

Спустя 28 минут, 41 секунда (4.09.2009 - 18:28) terret написал(а):
Guest
Не помогает, пишет ошибку
Parse error: syntax error, unexpected T_STRING, expecting T_VARIABLE
UPD:
Вот, нашел, как правильно писать:
PHP
class myquery{
    private static 
$num_query 0;
    function 
sql_query ($req) {
        
self::$num_query++;
        
$result=mysql_query("$req");
        return 
$result;
    }
    function 
get_num_query()
    {
         return 
self::$num_query;
    }
}


waldicom
Не в курсе, что это?

Спустя 2 минуты, 9 секунд (4.09.2009 - 18:31) Nikitian написал(а):
М.б. так?
PHP
class myquery{
    private static $num_query = 0;
    function sql_query ($req) {
        self::num_query++;
        $result=mysql_query($req);
        return $result;
    }
    function get_num_query()
    {
         return self::num_query;
     }
}

Спустя 2 минуты, 49 секунд (4.09.2009 - 18:33) terret написал(а):
Nikitian
Уже))

Спустя 1 день, 16 часов, 55 минут, 36 секунд (6.09.2009 - 11:29) terret написал(а):
Для потомков:
Использование памяти выводится с помощью функции memory_get_usage();
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.