2013-02-27 2 views
1

У меня есть ссылка на ресурс db, но в некоторых случаях я получаю ссылку mysql, а в некоторых других случаях функции получают тип ресурса postgresql.Как определить тип ресурса базы данных?

В зависимости от типа подключения, мне нужно делать разные вещи. Как проверить тип соединения?

В некоторых случаях мне нужно использовать $res = pg_query($link, $sqlcmd) , а в некоторых других случаях мне нужно использовать что-то вроде mysql_query.

Любые предложения?

Я уже пробовал get_class и get_type.

+0

Вы должны переключиться на PDO, чтобы сделать код более независимым от двигателя базы данных. – jeroen

+0

Работают над этим. Но код гигантский. И им отвечает за устаревший код. – Sangoku

ответ

3

Возможно, вы захотите посмотреть get_resource_type(). Он возвращает resource type.

Например:

$res = mysql_query($query); 
if(get_resource_type($res) == 'mysql result') { 
    // mysql result 
} elseif(get_resource_type($res) == 'pgsql result') { 
    // pgsql result 
} 
Смежные вопросы