2022-05-03 16:25:38 +02:00
|
|
|
<?php
|
|
|
|
|
2022-12-14 16:38:46 +01:00
|
|
|
namespace App\SQLLogin;
|
2022-05-03 16:25:38 +02:00
|
|
|
|
|
|
|
use PDO;
|
|
|
|
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
|
|
|
|
2022-12-14 16:38:46 +01:00
|
|
|
class SQLLoginConnect extends AbstractController
|
2022-05-03 16:25:38 +02:00
|
|
|
{
|
|
|
|
private static $_instance = null;
|
2022-12-09 17:31:07 +01:00
|
|
|
|
2022-05-03 16:25:38 +02:00
|
|
|
/**
|
|
|
|
* Méthode qui crée l'unique instance de la classe
|
|
|
|
* si elle n'existe pas encore puis la retourne.
|
|
|
|
*/
|
2024-09-24 10:32:05 +02:00
|
|
|
public static function getInstance(): SQLLoginConnect
|
2022-12-09 17:31:07 +01:00
|
|
|
{
|
|
|
|
if (is_null(self::$_instance)) {
|
2022-12-14 16:38:46 +01:00
|
|
|
self::$_instance = new SQLLoginConnect();
|
2022-05-03 16:25:38 +02:00
|
|
|
}
|
2022-12-09 17:31:07 +01:00
|
|
|
|
2022-05-03 16:25:38 +02:00
|
|
|
return self::$_instance;
|
|
|
|
}
|
|
|
|
|
2024-09-24 10:32:05 +02:00
|
|
|
public function connect($urlDatabase, $dbUser, $dbPassword): PDO
|
2022-05-03 16:25:38 +02:00
|
|
|
{
|
2024-10-08 14:36:12 +02:00
|
|
|
$options = [
|
|
|
|
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
|
|
|
|
PDO::ATTR_TIMEOUT => 5,
|
|
|
|
PDO::ATTR_PERSISTENT => false,
|
|
|
|
];
|
|
|
|
|
|
|
|
return new PDO($urlDatabase, $dbUser, $dbPassword, $options);
|
2022-05-03 16:25:38 +02:00
|
|
|
}
|
2022-12-09 17:31:07 +01:00
|
|
|
}
|