Test Setup Failed
Push — master ( 14bd9e...effcd8 )
by Sebastian
02:00
created

MysqliConnector::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 4
rs 10
cc 1
eloc 2
nc 1
nop 1
1
<?php
2
3
/**
4
 * Linna Framework.
5
 *
6
 * @author Sebastian Rapetti <[email protected]>
7
 * @copyright (c) 2017, Sebastian Rapetti
8
 * @license http://opensource.org/licenses/MIT MIT License
9
 */
10
declare(strict_types=1);
11
12
namespace Linna\Storage\Connectors;
13
14
use Linna\Storage\ConnectorInterface;
15
use mysqli;
16
17
/**
18
 * Mysql Improved Extension Connector.
19
 */
20
class MysqliConnector implements ConnectorInterface
21
{
22
    /**
23
     * @var array Mysqli connection options
24
     */
25
    protected $options;
26
27
    /**
28
     * Constructor.
29
     *
30
     * @param array $options
31
     */
32
    public function __construct(array $options)
33
    {
34
        $this->options = $options;
35
    }
36
37
    /**
38
     * Get Resource.
39
     *
40
     * @return mysqli
41
     */
42
    public function getResource()
43
    {
44
        mysqli_report(MYSQLI_REPORT_ALL);
45
46
        return new mysqli(
47
            $this->options['host'],
48
            $this->options['user'],
49
            $this->options['password'],
50
            $this->options['database'],
51
            $this->options['port']
52
        );
53
    }
54
}
55