请帮帮我。我塞进了瓦尔查尔柱
$nul='mystring';
$STH->bindParam(':param',$nul , PDO::PARAM_INT);
如果 PDO :: PARAM_INT的意思是进入数据库插入号(int( $ nul = 0!有一个记录字符串"mystring"。为什么?
请参阅 PHP PDO::bindParam(( 数据类型.. 它是如何工作的?
PDO::P ARAM_INT 仅将布尔值转换为整数。没有别的。
如果要将字符串转换为 int,请使用 intval
假设我正确理解了您的问题,您希望数据库中的值为 null(不确定值(,但实际上您得到的是字符串"nul"。
如果要将某些内容设置为 null,则不需要撇号。
// Setting the value of the string
$string_to_insert = 'my_string';
// Checks that the string has a value, if not sets to NULL
$value = isset($string_to_insert) ? $string_to_insert : null;
// Bind the parameter
$STH->bindParam(':param', $value, PDO::PARAM_INT);
如果在其周围放置撇号,则会在数据库中收到该文本字符串。
NULL 是一个常量,请查看此处的文档 http://www.php.net/manual/en/language.types.null.php