mysqli не видит подключение к БД объявленное в другом файле
Доброго времени у меня такой вопрос у меня есть 2 файла который через include подключены на странице
include('cnst.php');
include('func.php');
в cnst.php у меня подключение к БД
$db = new mysqli(ххх,ххх,ххх,ххх);
$db->set_charset("utf8");
а в func.php какие то операции допустим селект
$tmp = $db->query("SELECT * FROM xxx WHERE id='1'");
echo $tmp->num_rows;
проблема в том что операция не проходит по причине того что запрос не видит соединения с БД объявленного в инключе ранее и даже если я добавлю перед запросом
global $db;
как вообще такое правильно реализовать? что бы в отдельном файле конфигурации объявлять соединение, которое использовалось бы во всех остальных последующих, что бы не делать кучу соединений в БД ну а в конце конечно после всех операций его закрывать
UPD: перевел все на процедурный стиль и все заработало! похоже проблема в том что созданный объект соединения new mysqli в одном файле - плохо видится в остальных