- Added some more debug info, fixed missing interface on Entity

This commit is contained in:
Dave Mc Nicoll committed 2025-09-17 20:30:22 +00:00
1 parent 033a183269
commit 2e45eba520
3 files changed
+12 -5

No files matched your search

+9 -2
View File
@@ -19,7 +19,7 @@ class PdoObject extends PDO {
public function select(string $sql, array $parameters = []): PDOStatement
{
static::$dump && call_user_func_array(static::$dump, [ $sql, $parameters ]);
static::$dump && call_user_func_array(static::$dump, [ $this->fillDebugSqlParameters($sql, $parameters) ]);
try {
if (false !== ( $statement = $this->prepare($sql) )) {
@@ -43,7 +43,7 @@ class PdoObject extends PDO {
public function runQuery(string $sql, array $parameters = []): ? static
{
static::$dump && call_user_func_array(static::$dump, [ $sql, $parameters ]);
static::$dump && call_user_func_array(static::$dump, [ $this->fillDebugSqlParameters($sql, $parameters) ]);
try {
if (false !== ( $statement = $this->prepare($sql) )) {
@@ -131,4 +131,11 @@ class PdoObject extends PDO {
}
}
}
protected function fillDebugSqlParameters(string $sql, array $parameters) : string
{
$parameters = array_reverse($parameters);
return str_replace(array_keys($parameters), array_map(fn($e) => is_numeric($e) ? $e : $this->quote($e), array_values($parameters)), $sql);
}
}