|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2014-05-01 02:11 UTC] levim@php.net
-Package: Feature/Change Request
+Package: MySQLi related
-Operating System: WinXP SP2
+Operating System: Irrelevant
[2017-04-24 08:07 UTC] fjanisze@php.net
-Status: Open
+Status: Wont fix
[2017-04-24 08:07 UTC] fjanisze@php.net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Oct 27 11:00:01 2025 UTC |
Description: ------------ I'm looking for a way to do: $sql = CALL procedure(?,?,?); $stmt = $con->prepare($sql); $types = { "i", "i" , "i" }; $vars = { "var1", "var2", "var3" }; for ($i=0; $i<3; $i++) { $stmt->bind_param(types[$i],$$vars[$i]); } Note: Yes, I know bind_param() deprecated. stmt_bind_param() is the right way. Reproduce code: --------------- I can do: $sql = CALL procedure(?,?,?); $stmt = $con->prepare($sql); $stmt->bind_param("iii", $var1, $var2, $var3); But i can't do: -I get the error about not enought params for the procedure 3 expected 1 provided.- $stmt->bind_param("i", $var1); $stmt->bind_param("i", $var2); $stmt->bind_param("i", $var3);