Php 获取mysqli_stmt_bind_参数后MySQL使用的实际值

Php 获取mysqli_stmt_bind_参数后MySQL使用的实际值,php,mysql,mysqli,Php,Mysql,Mysqli,我有一个web应用程序正在运行。我使用了一段可以工作的代码: $dbConnection = getDbConnection(); $stmt = mysqli_prepare( $dbConnection, $SQLStatement); $bindParamArray = array_merge(array($stmt, $SQLBindString), $bindValueArray ); call_user_func_array ( mysqli_stmt_bi

我有一个web应用程序正在运行。我使用了一段可以工作的代码:

$dbConnection = getDbConnection();
    $stmt =  mysqli_prepare( $dbConnection, $SQLStatement);
    $bindParamArray = array_merge(array($stmt, $SQLBindString), $bindValueArray );
    call_user_func_array ( mysqli_stmt_bind_param , $bindParamArray );

    if( mysqli_stmt_execute($stmt) ) {
        $ret = mysqli_insert_id ($dbConnection);
        mysqli_stmt_close($stmt);
        $dbConnection->close();
    }else{
        //echo "<br><br>statement : ".mysqli_stmt_error($stmt);
        mysqli_stmt_close($stmt);
        $dbConnection->close();
    }
$dbConnection=getDbConnection();
$stmt=mysqli\u prepare($dbConnection,$SQLStatement);
$bindParamArray=array\u merge(数组($stmt,$SQLBindString),$bindValueArray);
调用用户函数数组(mysqli\u stmt\u bind\u param,$bindParamArray);
如果(mysqli_stmt_execute($stmt)){
$ret=mysqli\u insert\u id($dbConnection);
mysqli_stmt_close($stmt);
$dbConnection->close();
}否则{
//echo“

语句:”.mysqli\u stmt\u错误($stmt); mysqli_stmt_close($stmt); $dbConnection->close(); }
我想知道php在绑定值时是如何转换发送给db的值的,我正在寻找一种方法,在执行语句之前在db中获取绑定的实际值,以检查原始值和绑定值之间是否存在差异

例如,如果您尝试将空字符串绑定到整数中,它会将值
0
,或者如果您将日期
2013-15-15
(显然是一个不存在的日期),它会将其转换为
0000-00-00
,这肯定不是我期望的行为


有什么方法可以实现我想要的吗?

我认为,如果插入的日期不正确,则与绑定无关,但这对MySQL来说是个问题——它会发出警告。@ExplosionPills的问题是我不想插入值,然后知道有一个警告,我想知道MySQL将使用什么值,因为我听说php正在进行转换,我认为这是可能的。我不认为php会对日期做任何事情。不过,它可能会强制转换整数。。可能会使用类似于
intval
的东西,以防我向您保证,最终我会在数据库中插入一个0000-00-00,我更希望得到一个错误,而不是那样:我知道您会这样做,但这是MySQL做的,而不是PHP。尝试从MySQL命令行运行此命令:
SELECT from_UNIXTIME(UNIX_TIMESTAMP('2013-15-15'))