gpt4 book ai didi

php - NULL MySQL 到 PHP PDO

转载 作者:行者123 更新时间:2023-11-29 19:42:11 34 4
gpt4 key购买 nike

我正在寻找但没有找到通过 PDO 从 MySQL 获取的 NULL 在 PHP 中的值。
我发现了关于PDO::PARAM_NULL,但它是在MySQL中插入数据以及关于常量PDO::NULL_NATURALPDO::NULL_EMPTY_STRING>PDO::NULL_TO_STRING 但不知道它的用途。
代码示例:

class CountryManager{
public function getAll() {
$countries = [ ];

$query = $this->_db->query ( "SELECT f_id, f_icon, f_name FROM t_country ORDER BY f_name;" );

while ( $data = $query->fetch ( PDO::FETCH_ASSOC ) )
$countries [] = new CountryObject ( $data );

return $countries;
}
}

使用 CountryObject

class CountryObject {
private $_f_id;
private $_f_icon = null;
private $_f_name;
}

我需要知道可为空字段 f_icon 是否已填充,以及数据库中所有可为空字段。

最佳答案

使用 PDO 从 MySQL 获取的 NULL 在 PHP 中的值为 null

我想你只是以错误的方式实例化你的对象。让我向您推荐我的文章,Fetching objects with PDO ,这可以证明PDO和mysql总是返回空值:

class CountryObject {
private $_f_id;
private $_f_icon = null;
private $_f_name;
}
$obj = $pdo->query("SELECT 1 as _f_id, null as _f_icon, 'name' as _f_name")
->fetchObject('CountryObject');
var_dump($obj);

返回

object(CountryObject)#4 (3) {
["_f_id":"CountryObject":private]=>
string(1) "1"
["_f_icon":"CountryObject":private]=>
NULL
["_f_name":"CountryObject":private]=>
string(4) "name"
}

关于php - NULL MySQL 到 PHP PDO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41286580/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com