Mam funkcję, która jest wywoławana w kilku plikach (pliki są include-owane).
chciałbym przeprowadzić benchmark, który z plików odwołuje się do nej najczęściej i ile razy.
Najprościej rzecz ujmując - chcemy policzyć ilość zapytań do dazy danych z uwzględnieniem, które pliki wywołały ile zapytań.
Moje rozwiązanie wygląda tak:
index.php
<?php include ('main.inc.php'); $sql_re1 = my_query("SELECT * FROM test", __FILE__); include ('user_info.php'); ?>
user_info.php
<?php $sql_re2 = my_query("SELECT * FROM user_profil", __FILE__); $sql_re3 = my_query("SELECT * FROM user", __FILE__); ?>
main.inc.php
<? function my_query($query, $jaki_plik){ $_SESION['query'][$jaki_plik] ++; } ?>
Co daje w efekcie:
print_r($_SESION['query']);
Array(
[index.php] => 1
[user_info.php] => 2
)
Jedyna niedogodność tego rozwiązania to konieczność podania jako drugi parametr __FILE__ - zmienna przekazująca nazwę wykonywanego skryptu.
Czy ktoś ma jakiś pomysł, żeby funkcja my_query dostawała jako parametr tylko zapytanie SQL i wewnętrznie sama sprawdzała który plik ją wywołał
