|
4 | 4 |
|
5 | 5 | namespace staabm\PHPStanDba\Tests; |
6 | 6 |
|
7 | | -use mysqli; |
8 | 7 | use PDO; |
9 | 8 | use staabm\PHPStanDba\DbSchema\SchemaHasherMysql; |
10 | 9 | use staabm\PHPStanDba\QueryReflection\MysqliQueryReflector; |
@@ -32,13 +31,15 @@ public static function create(string $cacheDir): QueryReflector |
32 | 31 | $user = getenv('DBA_USER') ?: 'root'; |
33 | 32 | $password = getenv('DBA_PASSWORD') ?: 'root'; |
34 | 33 | $dbname = getenv('DBA_DATABASE') ?: 'phpstan_dba'; |
| 34 | + $ssl = false; |
35 | 35 | $mode = getenv('DBA_MODE') ?: self::MODE_RECORDING; |
36 | 36 | $reflector = getenv('DBA_REFLECTOR') ?: 'mysqli'; |
37 | 37 | } else { |
38 | 38 | $host = getenv('DBA_HOST') ?: $_ENV['DBA_HOST']; |
39 | 39 | $user = getenv('DBA_USER') ?: $_ENV['DBA_USER']; |
40 | 40 | $password = getenv('DBA_PASSWORD') ?: $_ENV['DBA_PASSWORD']; |
41 | 41 | $dbname = getenv('DBA_DATABASE') ?: $_ENV['DBA_DATABASE']; |
| 42 | + $ssl = (bool) (getenv('DBA_SSL') ?: $_ENV['DBA_SSL'] ?? false); |
42 | 43 | $mode = getenv('DBA_MODE') ?: $_ENV['DBA_MODE']; |
43 | 44 | $reflector = getenv('DBA_REFLECTOR') ?: $_ENV['DBA_REFLECTOR']; |
44 | 45 | } |
@@ -71,7 +72,11 @@ public static function create(string $cacheDir): QueryReflector |
71 | 72 | $schemaHasher = null; |
72 | 73 |
|
73 | 74 | if ('mysqli' === $reflector) { |
74 | | - $mysqli = new mysqli($host, $user, $password, $dbname); |
| 75 | + $mysqli = mysqli_init(); |
| 76 | + if (! $mysqli) { |
| 77 | + throw new \RuntimeException('Unable to init mysqli'); |
| 78 | + } |
| 79 | + $mysqli->real_connect($host, $user, $password, $dbname, null, null, $ssl ? MYSQLI_CLIENT_SSL : 0); |
75 | 80 | $reflector = new MysqliQueryReflector($mysqli); |
76 | 81 | $schemaHasher = new SchemaHasherMysql($mysqli); |
77 | 82 | } elseif ('pdo-mysql' === $reflector) { |
|
0 commit comments