Search by

A simple library for parsing and managing Data Source Names ( DSNs )

Package info

github.com/utopia-php/dsn

pkg:composer/utopia-php/dsn

Statistics

Installs: 343 126

Dependents: 3

Suggesters: 0

Stars: 6

Open Issues: 1

1.0.0 2026-09-24 08:23 UTC

This package is auto-updated.

Last update: 2026-09-26 10:48:49 UTC


README

Important

This repository is a read-only mirror of packages/dsn in appwrite/appwrite. Development happens there — please open issues and pull requests against appwrite/appwrite.

Total Downloads Discord

Utopia DSN library is simple and lite library for parsing and managing Data Source Names or DSNs. This library aims to be as simple and easy to learn and use as possible. This library is maintained by the Appwrite team.

Although the library was built for the Utopia Framework project, it is completely independent, dependency-free and can be used with any other PHP project or framework.

Getting Started

Install using composer:

composer require utopia-php/dsn
<?php

require_once '../vendor/autoload.php';

$dsn = new DSN('mariadb://user:password@localhost:3306/database?charset=utf8&timezone=UTC');
$scheme = $dsn->getScheme(); // mariadb
$user = $dsn->getUser(); // user
$password = $dsn->getPassword(); // password
$host = $dsn->getHost(); // localhost
$port = $dsn->getPort(); // 3306
$path = $dsn->getPath(); // database
$query = $dsn->getQuery(); // charset=utf8&timezone=UTC
$charset = $dsn->getParam('charset') // utf8
$timezone = $dsn->getParam('timezone') // UTC

Tests

composer test

System Requirements

Utopia DSN requires PHP 8.0 or later. We recommend using the latest PHP version whenever possible.

Copyright and license

The MIT License (MIT) http://www.opensource.org/licenses/mit-license.php