0

PEAR:DB/MDB2スタイルのDSNを変換する方法を探しています

phptype://username:password@hostspec/database

PHP PDOでサポートされている形式に変換する(このmysqlの場合など

$dsn = 'mysql:host=localhost;dbname=testdb';
$username = 'username';
$password = 'password';

既存の実装を探していましたが、何も見つかりませんでした。

4

1 に答える 1

0

I've solved problem with this code, but it's not yet properly tested:

preg_match('|([a-z]+)://([^:]*)(:(.*))?@([A-Za-z0-9\.-]*)(/([0-9a-zA-Z_/\.]*))|',
     $dsn,$matches);
$dsn=array(
    $matches[1].':host='.$matches[5].';dbname='.$matches[7],
    $matches[2],
    $matches[4]
);
于 2012-01-03T01:38:01.310 に答える