summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien Regad <dregad@mantisbt.org>2025-11-22 16:28:38 +0100
committerDamien Regad <dregad@mantisbt.org>2025-11-22 16:28:38 +0100
commit2208f7b5a527cf0c19932ebd80f4e854f6abc120 (patch)
tree524d257730fdf0061b8746c09a1e88e89548fd7d
parentfd37f9b5b1de89c43f1913deafa40d145838be31 (diff)
downloadadodb-2208f7b5a527cf0c19932ebd80f4e854f6abc120.tar.gz
adodb-2208f7b5a527cf0c19932ebd80f4e854f6abc120.tar.bz2
adodb-2208f7b5a527cf0c19932ebd80f4e854f6abc120.zip
mysql: treat objects with __toString() as string
Since the mysqli driver refactoring in 5.22.0 to support bound variable statements, objects passed as parameters are handled as BLOBs. This is a regression compared to earlier behavior, which allowed those having a __toString() method to be treated as strings. This restores the earlier functionality. Fixes #1075
-rw-r--r--drivers/adodb-mysqli.inc.php2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/adodb-mysqli.inc.php b/drivers/adodb-mysqli.inc.php
index 3a2d1ee8..d894e643 100644
--- a/drivers/adodb-mysqli.inc.php
+++ b/drivers/adodb-mysqli.inc.php
@@ -1256,7 +1256,7 @@ class ADODB_mysqli extends ADOConnection {
$typeString .= 'i';
} elseif (is_float($v)) {
$typeString .= 'd';
- } elseif (is_object($v)) {
+ } elseif (is_object($v) && !method_exists($v, '__toString')) {
// Assume a blob
$typeString .= 'b';
} else {