private function validateDBInfo($dbInfo)
{
$this->info('[Checking Database Connection]');
$this->line('Connecting Database using inputted database information..');
try {
$dsn = 'mysql:host=' . $dbInfo['host'] . ';dbname=' . $dbInfo['dbname'];
if ($dbInfo['port']) {
$dsn .= ";port=" . $dbInfo['port'];
}
$db = new PDO($dsn, $dbInfo['username'], $dbInfo['password'], array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
// check table count
$stmt = $db->query("SELECT COUNT(*) as cnt FROM information_schema.tables WHERE table_schema = '{$dbInfo['dbname']}'");
$result = $stmt->fetch();
$count = $result['cnt'];
} catch (\Exception $e) {
$this->output->error('Connection failed!! Check Your Database!');
throw $e;
}
$this->line('Connection successful.');
$this->output->newLine();
return true;
}