0
点赞
收藏
分享

微信扫一扫

php mysqli取出的数据都成了string


mysqli是可以获取数据库中的数据类型的,但是默认并没有开启。需要设置option参数  MYSQLI_OPT_INT_AND_FLOAT_NATIVE

function __construct($database, $username, $password, $hostname='localhost', $port=3306, $persistant = false){
$this->database = $database;
$this->username = $username;
$this->password = $password;
$this->hostname = $hostname.':'.$port;

$this->Connect($persistant);

mysqli_query($this->databaseLink,"SET NAMES UTF8");
mysqli_options($this->databaseLink,MYSQLI_OPT_INT_AND_FLOAT_NATIVE,true);
}

当然pdo也是可以的

$pdo = new PDO('mysql:host=127.0.0.1;dbname=test', 'root', '');

$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

$pdo->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, false);

foreach ($pdo->query('select * from test_int') as $row) {

var_dump($row);

}

举报

相关推荐

0 条评论