繁体   English   中英

NULL MySQL转换为PHP PDO

[英]NULL MySQL to PHP PDO

我正在寻找,但没有找到PDO附带的MySQL的NULL的 PHP中的值是什么。
我发现了有关PDO :: PARAM_NULL的信息,但它是要在MySQL中插入数据以及有关常量PDO :: NULL_NATURALPDO :: NULL_EMPTY_STRINGPDO :: 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获取的PHP中NULL的值为null

我想您只是用错误的方式实例化了对象。 让我为您推荐我的文章,《 使用PDO获取对象》 ,它可以证明PDO和mysql总是返回null可以:

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"
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM