forked from x86dev/docker-ttrss
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathttrss-utils.php
45 lines (38 loc) · 865 Bytes
/
ttrss-utils.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?php
function env($name, $default = null)
{
$v = getenv($name) ?: $default;
if ($v === null) {
error('The env ' . $name . ' does not exist');
}
return $v;
}
function error($text)
{
echo 'Error: ' . $text . PHP_EOL;
exit(1);
}
function dbconnect($config)
{
$map = array('host' => 'HOST', 'port' => 'PORT', 'dbname' => 'NAME', 'user' => 'USER', 'password' => 'PASS');
$dsn = $config['DB_TYPE'] . ':';
foreach ($map as $d => $h) {
if (isset($config['DB_' . $h])) {
$dsn .= $d . '=' . $config['DB_' . $h] . ';';
}
}
$pdo = new \PDO($dsn);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $pdo;
}
function dbcheck($config)
{
try {
dbconnect($config);
return true;
}
catch (PDOException $e) {
return false;
}
}
?>