Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php namespace App\Database; use Doctrine\DBAL\Connection as DoctrineConnection; u..

Decoded Output download

<?php 
 
namespace App\Database; 
 
use Doctrine\DBAL\Connection as DoctrineConnection; 
use Doctrine\DBAL\Driver\PDO\MySQL\Driver as PdoMySQLDriver; 
use App\Entity\DatabaseServer as DatabaseServerEntity; 
use App\Entity\Database as DatabaseEntity; 
use App\Entity\DatabaseUser as DatabaseUserEntity; 
 
class Connection 
{ 
    const ENGINE_MYSQL = "MySQL"; 
    const ENGINE_MARIA_DB = "MariaDB"; 
    private DatabaseServerEntity $databaseServerEntity; 
    private ?DoctrineConnection $connection = null; 
    public function __construct(DatabaseServerEntity $databaseServerEntity) 
    { 
        $this->databaseServerEntity = $databaseServerEntity; 
    } 
    public function connect($timeout = 10) 
    { 
        goto D80fa; 
        F740f: 
        return $this->connection; 
        goto e7e90; 
        a4028: 
        try { 
            goto c0f19; 
            b64f2: 
            E617a: 
            goto eddc0; 
            C6554: 
            $this->connection = new DoctrineConnection($params, $driver); 
            goto e2bc1; 
            E38c8: 
            $tmpCertificateFile = tempnam(sys_get_temp_dir(), "clp-tmp-certificate-"); 
            goto C16ad; 
            F9804: 
            $driverOptions[\PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT] = false; 
            goto b64f2; 
            Cf832: 
            $driverOptions = [\PDO::ATTR_TIMEOUT => $timeout, \PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION]; 
            goto fa4c9; 
            e2bc1: 
            $this->connection->connect(); 
            goto a7acd; 
            facf3: 
            $driver = new PdoMySQLDriver(); 
            goto C6554; 
            c3e29: 
            $driverOptions[\PDO::MYSQL_ATTR_SSL_CA] = $tmpCertificateFile; 
            goto F9804; 
            d8054: 
            if (!(false === empty($certificate))) { 
                goto E617a; 
            } 
            goto E38c8; 
            eddc0: 
            $params["driverOptions"] = $driverOptions; 
            goto facf3; 
            c0f19: 
            $params = ["host" => $this->databaseServerEntity->getHost(), "port" => $this->databaseServerEntity->getPort(), "user" => $this->databaseServerEntity->getUserName(), "password" => $this->databaseServerEntity->getDecryptedPassword()]; 
            goto Cf832; 
            fa4c9: 
            $certificate = $this->databaseServerEntity->getCertificate(); 
            goto d8054; 
            C16ad: 
            file_put_contents($tmpCertificateFile, $certificate); 
            goto c3e29; 
            a7acd: 
        } catch (\Exception $e) { 
            throw $e; 
        } finally { 
            if (!(true === isset($tmpCertificateFile))) { 
                goto cc0b0; 
            } 
            unlink($tmpCertificateFile); 
            cc0b0: 
        } 
        goto d7918; 
        D80fa: 
        if (!(true === is_null($this->connection))) { 
            goto Ecaa1; 
        } 
        goto a4028; 
        d7918: 
        Ecaa1: 
        goto F740f; 
        e7e90: 
    } 
    public function getDatabases(): array 
    { 
        goto fe749; 
        A2f37: 
        B3789: 
        goto aa5a8; 
        aa5a8: 
        return $databases; 
        goto fbce1; 
        Fab1d: 
        F1b31: 
        goto A2f37; 
        B01c8: 
        if (!(count($databasesRows) && true === is_array($databasesRows))) { 
            goto B3789; 
        } 
        goto dbe9d; 
        a9e7d: 
        $databases = []; 
        goto a2e19; 
        a2e19: 
        $databasesResult = $this->connection->executeQuery("show databases"); 
        goto b5566; 
        dbe9d: 
        foreach ($databasesRows as $databasesRow) { 
            goto Fefca; 
            A9ddc: 
            b9429: 
            goto Dacfb; 
            E0584: 
            $databases[] = $databasesRow["Database"]; 
            goto A9ddc; 
            Fefca: 
            if (!(true == isset($databasesRow["Database"]) && false === empty($databasesRow["Database"]))) { 
                goto b9429; 
            } 
            goto E0584; 
            Dacfb: 
            C534e: 
            goto E7915; 
            E7915: 
        } 
        goto Fab1d; 
        b5566: 
        $databasesRows = $databasesResult->fetchAllAssociative(); 
        goto B01c8; 
        fe749: 
        $this->connect(); 
        goto a9e7d; 
        fbce1: 
    } 
    public function createDatabase(DatabaseEntity $databaseEntity) 
    { 
        goto ff0ef; 
        e2765: 
        if (!(false === $this->hasDatabase($databaseName))) { 
            goto D5005; 
        } 
        goto D3a19; 
        f2091: 
        D5005: 
        goto dcd1b; 
        B6daf: 
        $schemaManager->createDatabase($databaseName); 
        goto f2091; 
        ff0ef: 
        $databaseName = $databaseEntity->getName(); 
        goto e2765; 
        D3a19: 
        $databaseName = sprintf("`%s`", $databaseName); 
        goto Fa936; 
        Fa936: 
        $schemaManager = $this->connection->createSchemaManager(); 
        goto B6daf; 
        dcd1b: 
    } 
    public function deleteDatabase(DatabaseEntity $databaseEntity) 
    { 
        goto C454f; 
        A2413: 
        if (!(true === $this->hasDatabase($databaseName))) { 
            goto daa70; 
        } 
        goto b7de9; 
        A2842: 
        daa70: 
        goto Fe808; 
        C454f: 
        $databaseName = $databaseEntity->getName(); 
        goto A2413; 
        b7de9: 
        $databaseName = sprintf("`%s`", $databaseName); 
        goto Dde3b; 
        Fb5a6: 
        $schemaManager->dropDatabase($databaseName); 
        goto A2842; 
        Dde3b: 
        $schemaManager = $this->connection->createSchemaManager(); 
        goto Fb5a6; 
        Fe808: 
    } 
    public function createUser(DatabaseUserEntity $databaseUserEntity): void 
    { 
        goto F8258; 
        C415b: 
        $sqlStatements = [sprintf("CREATE USER '%s'@'%%' IDENTIFIED BY '%s';", $databaseUserName, addslashes($databaseUserPassword)), sprintf("GRANT USAGE ON *.* TO '%s'@'%%';", $databaseUserName)]; 
        goto A41bc; 
        Df61e: 
        $sqlStatements = []; 
        goto D14fd; 
        B1a95: 
        $sqlStatements[] = sprintf("ALTER USER `%s`@`%%` REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;", $databaseUserName); 
        goto d6ada; 
        e3967: 
        Dbf1c: 
        goto Ccb67; 
        B4944: 
        c0942: 
        goto e8a20; 
        A081a: 
        E878a: 
        goto C3d14; 
        D14fd: 
        if (DatabaseUserEntity::PERMISSIONS_READ_WRITE == $databaseUserPermissions) { 
            goto Dbf1c; 
        } 
        goto Dd7dc; 
        F8258: 
        $this->deleteUser($databaseUserEntity); 
        goto B6961; 
        e8a20: 
        $sqlStatements = [sprintf("CREATE USER '%s'@'%%' IDENTIFIED WITH mysql_native_password BY '%s';", $databaseUserName, addslashes($databaseUserPassword)), sprintf("GRANT USAGE ON *.* TO '%s'@'%%';", $databaseUserName)]; 
        goto ccdd4; 
        C5a08: 
        if (self::ENGINE_MYSQL == $databaseEngine) { 
            goto c0942; 
        } 
        goto C415b; 
        b5175: 
        goto C7aba; 
        goto e3967; 
        D5a1a: 
        $databaseEntity = $databaseUserEntity->getDatabase(); 
        goto C5a08; 
        c483f: 
        foreach ($sqlStatements as $sql) { 
            $this->connection->executeStatement($sql); 
            ccf12: 
        } 
        goto A081a; 
        Ccb67: 
        $sqlStatements[] = sprintf("GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, 
                CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER ON `%s`.* TO  '%s'@'%%';", $databaseName, $databaseUserName); 
        goto B1a95; 
        d6ada: 
        C7aba: 
        goto c483f; 
        d25f6: 
        $databaseUserName = $databaseUserEntity->getUserName(); 
        goto e509c; 
        C3d14: 
        $this->connection->executeStatement("FLUSH PRIVILEGES;"); 
        goto b4bce; 
        D060e: 
        cd28e: 
        goto fbc3a; 
        a770c: 
        foreach ($sqlStatements as $sql) { 
            $this->connection->executeStatement($sql); 
            F698d: 
        } 
        goto D060e; 
        ccdd4: 
        ef006: 
        goto a770c; 
        a86d8: 
        $databaseUserPermissions = $databaseUserEntity->getPermissions(); 
        goto D5a1a; 
        e509c: 
        $databaseUserPassword = $databaseUserEntity->getDecryptedPassword(); 
        goto a86d8; 
        fbc3a: 
        $databaseName = $databaseEntity->getName(); 
        goto Df61e; 
        B6961: 
        $databaseEngine = $this->getEngine(); 
        goto d25f6; 
        A41bc: 
        goto ef006; 
        goto B4944; 
        Dd7dc: 
        $sqlStatements[] = sprintf("GRANT SELECT ON `%s`.* TO  '%s'@'%%';", $databaseName, $databaseUserName); 
        goto b5175; 
        b4bce: 
    } 
    public function deleteUser(DatabaseUserEntity $databaseUserEntity) 
    { 
        goto d85b3; 
        D3715: 
        $this->connection->executeStatement("FLUSH PRIVILEGES;"); 
        goto A421c; 
        b2419: 
        $databaseUserName = $databaseUserEntity->getUserName(); 
        goto E9fb3; 
        E9fb3: 
        $this->connection->executeStatement(sprintf("DROP USER IF EXISTS `%s`;", $databaseUserName)); 
        goto D3715; 
        d85b3: 
        $this->connect(); 
        goto b2419; 
        A421c: 
    } 
    public function hasDatabase(string $databaseName) 
    { 
        goto Ffe63; 
        a5e55: 
        $databases = $this->getDatabases(); 
        goto f1b6d; 
        Ffe63: 
        $this->connect(); 
        goto a5e55; 
        d3515: 
        return $hasDatabase; 
        goto ee42f; 
        f1b6d: 
        $hasDatabase = in_array($databaseName, $databases); 
        goto d3515; 
        ee42f: 
    } 
    public function getEngine(): string 
    { 
        goto bb1fd; 
        ecd73: 
        d4f93: 
        goto bd089; 
        B3b73: 
        $version = strtolower($this->getVariableValue("version")); 
        goto D4995; 
        bd089: 
        return $engine; 
        goto Cab65; 
        Bda2a: 
        $engine = self::ENGINE_MARIA_DB; 
        goto ecd73; 
        bb1fd: 
        $engine = self::ENGINE_MYSQL; 
        goto B3b73; 
        D4995: 
        if (!(true === \str_contains($version, "maria"))) { 
            goto d4f93; 
        } 
        goto Bda2a; 
        Cab65: 
    } 
    public function getVersion(): ?string 
    { 
        goto d1414; 
        A9ce5: 
        if (!(true === isset($versionParts["major"]) && false === empty($versionParts["major"]) && true === isset($versionParts["minor"]) && false === empty($versionParts["minor"]))) { 
            goto e92d8; 
        } 
        goto bbe79; 
        bbe79: 
        $version = sprintf("%s.%s", $versionParts["major"], $versionParts["minor"]); 
        goto Cf99a; 
        d1414: 
        $version = $this->getVariableValue("innodb_version"); 
        goto d7541; 
        Bb709: 
        preg_match("/^(?P<major>\d+)(?:\.(?P<minor>\d+)(?:\.(?P<patch>\d+))?)?/", $version, $versionParts); 
        goto A9ce5; 
        Cf99a: 
        e92d8: 
        goto df8c9; 
        e01b9: 
        return $version; 
        goto d6f6b; 
        df8c9: 
        faf80: 
        goto e01b9; 
        d7541: 
        if (!(false === empty($version))) { 
            goto faf80; 
        } 
        goto Bb709; 
        d6f6b: 
    } 
    public function getVariableValue(string $key): ?string 
    { 
        goto b3ae2; 
        df413: 
        $value = $result["Value"] ?? ''; 
        goto d789d; 
        D8e64: 
        $statement = $this->connection->prepare("SHOW VARIABLES LIKE :key"); 
        goto f5834; 
        d789d: 
        return $value; 
        goto D785f; 
        b3ae2: 
        $this->connect(); 
        goto D8e64; 
        f5834: 
        $result = $statement->execute(["key" => $key]); 
        goto Dc70d; 
        Dc70d: 
        $result = $result->fetchAssociative(); 
        goto df413; 
        D785f: 
    } 
} 
 ?>

Did this file decode correctly?

Original Code

<?php

namespace App\Database;

use Doctrine\DBAL\Connection as DoctrineConnection;
use Doctrine\DBAL\Driver\PDO\MySQL\Driver as PdoMySQLDriver;
use App\Entity\DatabaseServer as DatabaseServerEntity;
use App\Entity\Database as DatabaseEntity;
use App\Entity\DatabaseUser as DatabaseUserEntity;

class Connection
{
    const ENGINE_MYSQL = "\x4d\x79\x53\121\x4c";
    const ENGINE_MARIA_DB = "\x4d\x61\162\151\141\x44\102";
    private DatabaseServerEntity $databaseServerEntity;
    private ?DoctrineConnection $connection = null;
    public function __construct(DatabaseServerEntity $databaseServerEntity)
    {
        $this->databaseServerEntity = $databaseServerEntity;
    }
    public function connect($timeout = 10)
    {
        goto D80fa;
        F740f:
        return $this->connection;
        goto e7e90;
        a4028:
        try {
            goto c0f19;
            b64f2:
            E617a:
            goto eddc0;
            C6554:
            $this->connection = new DoctrineConnection($params, $driver);
            goto e2bc1;
            E38c8:
            $tmpCertificateFile = tempnam(sys_get_temp_dir(), "\x63\154\160\x2d\x74\155\x70\55\x63\145\162\164\x69\146\151\143\x61\164\x65\55");
            goto C16ad;
            F9804:
            $driverOptions[\PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT] = false;
            goto b64f2;
            Cf832:
            $driverOptions = [\PDO::ATTR_TIMEOUT => $timeout, \PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION];
            goto fa4c9;
            e2bc1:
            $this->connection->connect();
            goto a7acd;
            facf3:
            $driver = new PdoMySQLDriver();
            goto C6554;
            c3e29:
            $driverOptions[\PDO::MYSQL_ATTR_SSL_CA] = $tmpCertificateFile;
            goto F9804;
            d8054:
            if (!(false === empty($certificate))) {
                goto E617a;
            }
            goto E38c8;
            eddc0:
            $params["\144\162\151\166\x65\x72\x4f\160\x74\x69\x6f\156\163"] = $driverOptions;
            goto facf3;
            c0f19:
            $params = ["\x68\x6f\x73\x74" => $this->databaseServerEntity->getHost(), "\x70\157\x72\164" => $this->databaseServerEntity->getPort(), "\x75\163\x65\162" => $this->databaseServerEntity->getUserName(), "\x70\x61\163\163\167\x6f\x72\x64" => $this->databaseServerEntity->getDecryptedPassword()];
            goto Cf832;
            fa4c9:
            $certificate = $this->databaseServerEntity->getCertificate();
            goto d8054;
            C16ad:
            file_put_contents($tmpCertificateFile, $certificate);
            goto c3e29;
            a7acd:
        } catch (\Exception $e) {
            throw $e;
        } finally {
            if (!(true === isset($tmpCertificateFile))) {
                goto cc0b0;
            }
            unlink($tmpCertificateFile);
            cc0b0:
        }
        goto d7918;
        D80fa:
        if (!(true === is_null($this->connection))) {
            goto Ecaa1;
        }
        goto a4028;
        d7918:
        Ecaa1:
        goto F740f;
        e7e90:
    }
    public function getDatabases(): array
    {
        goto fe749;
        A2f37:
        B3789:
        goto aa5a8;
        aa5a8:
        return $databases;
        goto fbce1;
        Fab1d:
        F1b31:
        goto A2f37;
        B01c8:
        if (!(count($databasesRows) && true === is_array($databasesRows))) {
            goto B3789;
        }
        goto dbe9d;
        a9e7d:
        $databases = [];
        goto a2e19;
        a2e19:
        $databasesResult = $this->connection->executeQuery("\163\x68\157\x77\x20\x64\x61\164\x61\x62\x61\163\x65\x73");
        goto b5566;
        dbe9d:
        foreach ($databasesRows as $databasesRow) {
            goto Fefca;
            A9ddc:
            b9429:
            goto Dacfb;
            E0584:
            $databases[] = $databasesRow["\x44\141\x74\141\x62\x61\x73\x65"];
            goto A9ddc;
            Fefca:
            if (!(true == isset($databasesRow["\x44\x61\x74\x61\x62\141\163\145"]) && false === empty($databasesRow["\104\x61\164\x61\x62\x61\x73\x65"]))) {
                goto b9429;
            }
            goto E0584;
            Dacfb:
            C534e:
            goto E7915;
            E7915:
        }
        goto Fab1d;
        b5566:
        $databasesRows = $databasesResult->fetchAllAssociative();
        goto B01c8;
        fe749:
        $this->connect();
        goto a9e7d;
        fbce1:
    }
    public function createDatabase(DatabaseEntity $databaseEntity)
    {
        goto ff0ef;
        e2765:
        if (!(false === $this->hasDatabase($databaseName))) {
            goto D5005;
        }
        goto D3a19;
        f2091:
        D5005:
        goto dcd1b;
        B6daf:
        $schemaManager->createDatabase($databaseName);
        goto f2091;
        ff0ef:
        $databaseName = $databaseEntity->getName();
        goto e2765;
        D3a19:
        $databaseName = sprintf("\x60\x25\163\x60", $databaseName);
        goto Fa936;
        Fa936:
        $schemaManager = $this->connection->createSchemaManager();
        goto B6daf;
        dcd1b:
    }
    public function deleteDatabase(DatabaseEntity $databaseEntity)
    {
        goto C454f;
        A2413:
        if (!(true === $this->hasDatabase($databaseName))) {
            goto daa70;
        }
        goto b7de9;
        A2842:
        daa70:
        goto Fe808;
        C454f:
        $databaseName = $databaseEntity->getName();
        goto A2413;
        b7de9:
        $databaseName = sprintf("\140\x25\x73\x60", $databaseName);
        goto Dde3b;
        Fb5a6:
        $schemaManager->dropDatabase($databaseName);
        goto A2842;
        Dde3b:
        $schemaManager = $this->connection->createSchemaManager();
        goto Fb5a6;
        Fe808:
    }
    public function createUser(DatabaseUserEntity $databaseUserEntity): void
    {
        goto F8258;
        C415b:
        $sqlStatements = [sprintf("\103\122\105\101\124\105\40\x55\x53\105\122\x20\47\45\163\47\x40\47\45\45\x27\x20\x49\x44\105\x4e\124\x49\x46\111\105\x44\40\102\131\40\47\45\163\x27\73", $databaseUserName, addslashes($databaseUserPassword)), sprintf("\x47\122\101\116\x54\40\x55\x53\x41\x47\105\40\117\x4e\x20\x2a\56\52\40\x54\x4f\x20\47\x25\163\47\x40\47\x25\45\47\73", $databaseUserName)];
        goto A41bc;
        Df61e:
        $sqlStatements = [];
        goto D14fd;
        B1a95:
        $sqlStatements[] = sprintf("\x41\114\x54\x45\122\x20\125\123\105\122\40\x60\x25\163\140\x40\140\x25\x25\140\x20\x52\x45\121\125\x49\122\x45\x20\116\117\116\x45\x20\x57\x49\124\110\40\x4d\x41\130\x5f\x51\125\105\x52\111\x45\123\137\120\x45\122\x5f\x48\x4f\125\122\x20\x30\40\x4d\101\130\x5f\x43\117\x4e\x4e\x45\103\124\x49\x4f\116\x53\x5f\120\105\x52\137\x48\117\125\x52\x20\x30\40\x4d\x41\x58\x5f\x55\x50\x44\101\124\105\123\137\120\105\x52\x5f\110\x4f\x55\x52\x20\60\x20\115\x41\x58\137\125\123\x45\122\x5f\103\x4f\x4e\116\x45\103\x54\111\x4f\116\x53\x20\60\73", $databaseUserName);
        goto d6ada;
        e3967:
        Dbf1c:
        goto Ccb67;
        B4944:
        c0942:
        goto e8a20;
        A081a:
        E878a:
        goto C3d14;
        D14fd:
        if (DatabaseUserEntity::PERMISSIONS_READ_WRITE == $databaseUserPermissions) {
            goto Dbf1c;
        }
        goto Dd7dc;
        F8258:
        $this->deleteUser($databaseUserEntity);
        goto B6961;
        e8a20:
        $sqlStatements = [sprintf("\103\122\105\101\124\105\x20\x55\x53\105\122\x20\x27\45\x73\47\x40\47\45\x25\47\40\111\104\105\116\x54\111\106\x49\105\x44\40\x57\x49\124\x48\40\x6d\171\163\161\154\137\x6e\141\x74\151\166\x65\137\160\141\163\x73\167\x6f\162\144\x20\102\x59\40\47\45\163\x27\73", $databaseUserName, addslashes($databaseUserPassword)), sprintf("\107\122\x41\x4e\x54\40\125\x53\101\x47\105\x20\x4f\x4e\x20\x2a\x2e\52\40\124\117\40\x27\x25\x73\x27\x40\x27\45\45\47\x3b", $databaseUserName)];
        goto ccdd4;
        C5a08:
        if (self::ENGINE_MYSQL == $databaseEngine) {
            goto c0942;
        }
        goto C415b;
        b5175:
        goto C7aba;
        goto e3967;
        D5a1a:
        $databaseEntity = $databaseUserEntity->getDatabase();
        goto C5a08;
        c483f:
        foreach ($sqlStatements as $sql) {
            $this->connection->executeStatement($sql);
            ccf12:
        }
        goto A081a;
        Ccb67:
        $sqlStatements[] = sprintf("\107\x52\x41\x4e\x54\x20\x53\105\x4c\x45\103\x54\54\40\x49\x4e\123\105\122\x54\54\40\x55\x50\x44\x41\x54\x45\54\40\x44\x45\114\105\x54\x45\54\x20\x43\x52\105\x41\x54\105\x2c\x20\104\x52\117\120\x2c\x20\122\105\x46\105\x52\x45\x4e\103\x45\123\54\x20\x49\x4e\x44\105\130\x2c\x20\101\x4c\x54\x45\x52\x2c\40\12\40\x20\x20\x20\40\x20\40\x20\40\x20\x20\40\40\40\x20\x20\103\x52\x45\x41\x54\x45\x20\x54\x45\x4d\120\x4f\122\101\122\131\40\x54\x41\x42\x4c\x45\x53\x2c\x20\114\x4f\103\x4b\40\124\x41\102\x4c\105\123\54\x20\x45\130\105\x43\x55\124\x45\54\x20\103\122\x45\101\x54\105\40\126\111\x45\127\x2c\40\123\x48\117\127\40\126\111\x45\127\54\40\103\x52\x45\x41\x54\x45\40\122\117\125\x54\x49\116\x45\x2c\40\101\x4c\x54\x45\x52\40\x52\117\x55\x54\x49\x4e\105\x2c\x20\x45\x56\105\x4e\124\x2c\40\x54\122\x49\x47\x47\105\122\40\x4f\x4e\40\x60\x25\x73\140\56\52\x20\124\117\40\x20\47\45\x73\x27\100\x27\x25\x25\47\73", $databaseName, $databaseUserName);
        goto B1a95;
        d6ada:
        C7aba:
        goto c483f;
        d25f6:
        $databaseUserName = $databaseUserEntity->getUserName();
        goto e509c;
        C3d14:
        $this->connection->executeStatement("\106\x4c\x55\123\x48\x20\x50\122\111\126\x49\x4c\105\107\x45\123\73");
        goto b4bce;
        D060e:
        cd28e:
        goto fbc3a;
        a770c:
        foreach ($sqlStatements as $sql) {
            $this->connection->executeStatement($sql);
            F698d:
        }
        goto D060e;
        ccdd4:
        ef006:
        goto a770c;
        a86d8:
        $databaseUserPermissions = $databaseUserEntity->getPermissions();
        goto D5a1a;
        e509c:
        $databaseUserPassword = $databaseUserEntity->getDecryptedPassword();
        goto a86d8;
        fbc3a:
        $databaseName = $databaseEntity->getName();
        goto Df61e;
        B6961:
        $databaseEngine = $this->getEngine();
        goto d25f6;
        A41bc:
        goto ef006;
        goto B4944;
        Dd7dc:
        $sqlStatements[] = sprintf("\107\122\101\116\124\x20\x53\105\x4c\x45\x43\x54\x20\117\x4e\x20\x60\x25\163\x60\x2e\x2a\x20\x54\x4f\x20\x20\x27\x25\x73\47\100\47\45\x25\x27\x3b", $databaseName, $databaseUserName);
        goto b5175;
        b4bce:
    }
    public function deleteUser(DatabaseUserEntity $databaseUserEntity)
    {
        goto d85b3;
        D3715:
        $this->connection->executeStatement("\x46\114\125\x53\x48\x20\120\122\111\126\x49\114\105\x47\105\x53\73");
        goto A421c;
        b2419:
        $databaseUserName = $databaseUserEntity->getUserName();
        goto E9fb3;
        E9fb3:
        $this->connection->executeStatement(sprintf("\104\122\117\120\40\x55\123\105\122\x20\111\x46\40\x45\130\111\x53\124\123\x20\x60\x25\x73\x60\x3b", $databaseUserName));
        goto D3715;
        d85b3:
        $this->connect();
        goto b2419;
        A421c:
    }
    public function hasDatabase(string $databaseName)
    {
        goto Ffe63;
        a5e55:
        $databases = $this->getDatabases();
        goto f1b6d;
        Ffe63:
        $this->connect();
        goto a5e55;
        d3515:
        return $hasDatabase;
        goto ee42f;
        f1b6d:
        $hasDatabase = in_array($databaseName, $databases);
        goto d3515;
        ee42f:
    }
    public function getEngine(): string
    {
        goto bb1fd;
        ecd73:
        d4f93:
        goto bd089;
        B3b73:
        $version = strtolower($this->getVariableValue("\x76\145\x72\163\x69\157\x6e"));
        goto D4995;
        bd089:
        return $engine;
        goto Cab65;
        Bda2a:
        $engine = self::ENGINE_MARIA_DB;
        goto ecd73;
        bb1fd:
        $engine = self::ENGINE_MYSQL;
        goto B3b73;
        D4995:
        if (!(true === \str_contains($version, "\155\x61\162\x69\141"))) {
            goto d4f93;
        }
        goto Bda2a;
        Cab65:
    }
    public function getVersion(): ?string
    {
        goto d1414;
        A9ce5:
        if (!(true === isset($versionParts["\x6d\141\152\x6f\162"]) && false === empty($versionParts["\x6d\x61\x6a\x6f\162"]) && true === isset($versionParts["\x6d\151\156\x6f\x72"]) && false === empty($versionParts["\x6d\151\x6e\x6f\x72"]))) {
            goto e92d8;
        }
        goto bbe79;
        bbe79:
        $version = sprintf("\x25\163\x2e\x25\163", $versionParts["\x6d\x61\152\x6f\162"], $versionParts["\155\x69\x6e\157\162"]);
        goto Cf99a;
        d1414:
        $version = $this->getVariableValue("\151\156\x6e\x6f\x64\142\137\166\x65\x72\163\151\x6f\x6e");
        goto d7541;
        Bb709:
        preg_match("\x2f\136\50\77\x50\x3c\155\141\x6a\x6f\162\76\134\144\53\51\50\x3f\x3a\134\56\x28\77\120\74\x6d\151\x6e\157\162\x3e\134\x64\53\x29\x28\x3f\x3a\x5c\56\50\77\120\74\x70\141\164\x63\150\76\134\x64\x2b\x29\x29\x3f\51\x3f\x2f", $version, $versionParts);
        goto A9ce5;
        Cf99a:
        e92d8:
        goto df8c9;
        e01b9:
        return $version;
        goto d6f6b;
        df8c9:
        faf80:
        goto e01b9;
        d7541:
        if (!(false === empty($version))) {
            goto faf80;
        }
        goto Bb709;
        d6f6b:
    }
    public function getVariableValue(string $key): ?string
    {
        goto b3ae2;
        df413:
        $value = $result["\x56\141\x6c\165\x65"] ?? '';
        goto d789d;
        D8e64:
        $statement = $this->connection->prepare("\x53\110\117\x57\40\x56\x41\x52\x49\x41\102\x4c\105\x53\40\114\111\113\x45\x20\72\153\145\171");
        goto f5834;
        d789d:
        return $value;
        goto D785f;
        b3ae2:
        $this->connect();
        goto D8e64;
        f5834:
        $result = $statement->execute(["\153\x65\x79" => $key]);
        goto Dc70d;
        Dc70d:
        $result = $result->fetchAssociative();
        goto df413;
        D785f:
    }
}

Function Calls

None

Variables

None

Stats

MD5 814a946d1de7a7de2b59e5f0db2850bf
Eval Count 0
Decode Time 35 ms