使用 PDO 调用带有 Out 参数的存储过程:已解决的 Bug
尽管遵循 PDO 手册,您可能会遇到“OUT 或 INOUT 参数” ...不是变量”调用带有输出参数的存储过程时出现错误。这可能是由于早期版本的 PHP 和 MySQL 中的错误造成的。
要解决此问题,请实施以下解决方法:
DELIMITER // CREATE PROCEDURE `proc_OUT` (OUT var1 VARCHAR(100)) BEGIN SET var1 = 'This is a test'; SELECT var1; -- Select added to retrieve the output parameter END //
$stmt = $db->prepare("CALL proc_OUT(?)"); $stmt->bindParam(1, $return_value, PDO::PARAM_STR, 4000); $stmt->execute();
$result = $db->query("SELECT var1 FROM proc_OUT"); foreach ($result as $row) { echo $row['var1']; }
以上是使用 PDO 调用存储过程时如何修复'OUT 或 INOUT 参数...不是变量”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!