我正在寻找一种使用PHP在本地PC中获取ODBC数据源列表的方法。 我怎样才能做到这一点?
答案 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 one或this 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";
}