PDO插入特定数据类型


PDO inserting specific data type

请帮帮我。我塞进了瓦尔查尔柱

$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