I try to start the application by: php -S localhost:8000 -t public/ and I get the error
Fatal error: Uncaught PDOException: SQLSTATE[HY000] [2002] No such file or directory in /Applications/XAMPP/xamppfiles/htdocs/pouce/src/App/Database.php:20 Stack trace: #0 /Applications/XAMPP/xamppfiles/htdocs/pouce/src/App/Database.php(20): PDO->__construct('mysql: host=loc...', 'root', '', Array) #1 /Applications/XAMPP/xamppfiles/htdocs/pouce/src/App/Database.php(28): App\App\Database->__construct() #2 /Applications/XAMPP/xamppfiles/htdocs/pouce/src/App/App.php(173): App\App\Database::getInstance() #3 /Applications/XAMPP/xamppfiles/htdocs/pouce/src/App/Model.php(14): App\App\App->getDB() #4 /Applications/XAMPP/xamppfiles/htdocs/pouce/src/App/App.php(27): App\App\Model->__construct() #5 /Applications/XAMPP/xamppfiles/htdocs/pouce/public/index.php(8): App\App\App->run() #6 {main} thrown in /Applications/XAMPP/xamppfiles/htdocs/pouce/src/App/Database.php on line 20
Here is my code :
<?php
namespace App\App;
use PDO;
class Database {
    private static $_instance;
    private PDO $pdo;
    private $db_config;
    public function __construct()
    {
        $this->db_config = App::getConfig()['db_config'];
        
        $dsn = "mysql: host={$this->db_config['db_host']}; dbname={$this->db_config['db_name']}";
        
        $this->pdo = new PDO($dsn, $this->db_config['db_user'], $this->db_config['db_pass'], [
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
        ]);
    }
    public static function getInstance()
    {
        if(self::$_instance === null)
        {
            self::$_instance = new self();
        }
        return self::$_instance;
    }
    public function getPDO(): PDO
    {
        return $this->pdo;
    }
}
 
    