aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/Minz/ModelPdo.php15
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/Minz/ModelPdo.php b/lib/Minz/ModelPdo.php
index f7a6994c7..b39ae2f81 100644
--- a/lib/Minz/ModelPdo.php
+++ b/lib/Minz/ModelPdo.php
@@ -238,4 +238,19 @@ class Minz_ModelPdo {
public function fetchColumn(string $sql, int $column, array $values = []): ?array {
return $this->fetchAny($sql, $values, PDO::FETCH_COLUMN, $column);
}
+
+ /** For retrieving a single value without prepared statement such as `SELECT version()` */
+ public function fetchValue(string $sql): ?string {
+ $stm = $this->pdo->query($sql);
+ if ($stm === false) {
+ Minz_Log::error('SQL error ' . json_encode($this->pdo->errorInfo()) . ' during ' . $sql);
+ return null;
+ }
+ $columns = $stm->fetchAll(PDO::FETCH_COLUMN, 0);
+ if ($columns === false) {
+ Minz_Log::error('SQL error ' . json_encode($stm->errorInfo()) . ' during ' . $sql);
+ return null;
+ }
+ return isset($columns[0]) ? (string)$columns[0] : null;
+ }
}