开发者

PDOStatement::execute with parameters

This page is really not clear for the function: http://www.php.net/manual/en/pdostatement.execute.php

I'm not exactly sure why I would bindParam as oppose to just passing in an array. With bindParam, I'll have to specify the type.

So my question woul开发者_如何学JAVAd be, if I just do $stmt->execute(array("somevalue", b'somebinarydata', 10203, 201.3));, would the types be automatically recognized? Is there anything I have be aware of?

Thanks.


So my question would be, if I just do $stmt->execute(array("somevalue", b'somebinarydata', 10203, 201.3));, would the types be automatically recognized?

The answer is No, The PHP manual states:

An array of values with as many elements as there are bound parameters in the SQL statement being executed. All values are treated as PDO::PARAM_STR.

the page stating the entity PDO::PARAM_STR states:

Represents the SQL CHAR, VARCHAR, or other string data type.

source: http://www.php.net/manual/en/pdo.constants.php


As it says in the doc, if you want to specify type you do that beforehand, for example:

$sth->bindParam(':calories', $calories, PDO::PARAM_INT);

Example

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜