Skip to content

Commit

Permalink
Fix columns cache in Model class
Browse files Browse the repository at this point in the history
  • Loading branch information
Unlink committed Dec 6, 2023
1 parent 9819ff2 commit 9c13903
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions App/Core/Model.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
abstract class Model implements \JsonSerializable
{
private static ?Connection $connection = null;
private static ?array $dbColumns = null;
private static array $dbColumns = [];
private mixed $_dbId = null;

/**
Expand Down Expand Up @@ -175,16 +175,16 @@ public function save(): void
*/
public static function getDbColumns(): array
{
if (self::$dbColumns != null) {
return self::$dbColumns;
if (isset(self::$dbColumns[static::class])) {
return self::$dbColumns[static::class];
}
self::connect();
try {
$sql = "DESCRIBE " . static::getTableName();
$stmt = self::$connection->prepare($sql);
$stmt->execute([]);
self::$dbColumns = array_column($stmt->fetchAll(), 'Field');
return self::$dbColumns;
self::$dbColumns[static::class] = array_column($stmt->fetchAll(), 'Field');
return self::$dbColumns[static::class];
} catch (PDOException $e) {
throw new \Exception('Query failed: ' . $e->getMessage(), 0, $e);
}
Expand Down

0 comments on commit 9c13903

Please sign in to comment.