使用PHP获取本地pc中的ODBC数据源列表

时间:2010-03-22 14:53:34

标签: php mysql odbc

我正在寻找一种使用PHP在本地PC中获取ODBC数据源列表的方法。 我怎样才能做到这一点?

3 个答案:

答案 0 :(得分:1)

如果我认为你在Windows上运行

用户定义的ODBC连接存储在 HKEY_CURRENT_USER \ Software \ ODBC \ ODBC.INI

系统定义的ODBC连接存储在 HKEY_LOCAL_MACHINE \ SOFTWARE \ ODBC \ ODBC.INI

ODBC驱动程序在 HKEY_LOCAL_MACHINE \ SOFTWARE \ ODBC \ ODBCINST.INI

下定义

所以你需要一些技巧来从注册表中读取this onethis one

如果我认为你在unix / linux上那么

用户定义的ODBC连接存储在 /etc/odbc.ini

系统定义的ODBC连接存储在 /home/username/.odbc.ini

ODBC驱动程序在 /etc/odbcinst.ini

下定义

所有这些都是类似INI的语法文本文件。

答案 1 :(得分:0)

PHP具有对MySQL的内置连接支持,因此不需要ODBC连接。 PHP不支持的任何数据库环境都需要ODBC。

答案 2 :(得分:0)

    define('HKEY_LOCAL_MACHINE', 0x80000002); 
    $computer = '.'; 
    $reg = new COM("winmgmts:{impersonationLevel=impersonate}!\\\\$computer\\root\\default:StdRegProv"); 
    $key_path = 'SOFTWARE\ODBC\ODBCINST.INI'; 
    $sub_keys = new VARIANT(); 
    $reg->EnumKey(HKEY_LOCAL_MACHINE, $key_path, $sub_keys); 

    foreach($sub_keys as $sub_key){ 
        echo $sub_key . "\n"; 
    }