i created function print prepared-statement-sql-string variables in it, based on found in other stackoverflow question.
here code:
foreach($params $idx => $param) { if ($idx == 0) continue; $sql = str_replace('?', "'" . $param . "'", $sql, 1); } printerror($sql);
when run get: fatal error: variables can passed reference
line 3. when use
$sql = preg_replace('/\?/', "'" . $param . "'", $sql, 1);
for line 3 works fine.
any idea why?
the last parameter, count, passed reference. can see in description @ http://us.php.net/str_replace there's &
in front of variable.
this means cannot use literal 1
there. you'd have do:
$sql = str_replace('?', "'" . $param . "'", $sql, $count); echo $count;
you'll have displayed on screen how many instances replaced.
Comments
Post a Comment