セカンダリアプリケーションとリンクするために、正規表現を使用して(Symfonyアプリケーションからの)DSNを解析しようとしていますが、同じデータベースを使用しています。
私が現在持っているDSNは次のとおりです。
mysql:dbname=my_db_name;host=localhost
正規表現:
/^(\w+):(dbname=(\w+))?;?(host=(\w+))?/
(を使用preg_match()
)。これはOKと一致しますが、DSN要素が入れ替わっているため、テスト環境では失敗します。
mysql:host=localhost;dbname=my_testdb_name
はい、それらを切り替えることもできますが、両方のDSNからホストとdbnameの部分を抽出することは、単一の正規表現で可能であると確信しています。同時に知識を強化できるようにしたいと思います。時間;-)これを行う方法はありますか?