Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 位类型的PDO列未获取任何值_Php_Pdo - Fatal编程技术网

Php 位类型的PDO列未获取任何值

Php 位类型的PDO列未获取任何值,php,pdo,Php,Pdo,我使用PDO查询我的mysql数据库,使用一个简单的“SELECT*FROM Invoices”查询。现在,如果我打印查询结果,则所有“bit”类型的列都会得到一个空值 Array ( [0] => stdClass Object ( [ID] => 1 [Client] => 1 [Title] => Mars 2012 [Issued] =>

我使用PDO查询我的mysql数据库,使用一个简单的“SELECT*FROM Invoices”查询。现在,如果我打印查询结果,则所有“bit”类型的列都会得到一个空值

Array
(
    [0] => stdClass Object
        (
            [ID] => 1
            [Client] => 1
            [Title] => Mars 2012
            [Issued] => 2012-04-02
            [Expiration] => 2012-04-22
            [OurReference] => 1
            [TheirReference] => 
            [Payed] => 
            [Sent] => 
        )

    [1] => stdClass Object
        (
            [ID] => 2
            [Client] => 4
            [Title] => Apputveckling
            [Issued] => 2012-04-30
            [Expiration] => 2012-05-21
            [OurReference] => 1
            [TheirReference] => 
            [Payed] => 
            [Sent] => 
        )

    [2] => stdClass Object
        (
            [ID] => 3
            [Client] => 4
            [Title] => Administration
            [Issued] => 2012-05-28
            [Expiration] => 2012-06-18
            [OurReference] => 1
            [TheirReference] => 
            [Payed] => 
            [Sent] => 
        )

)
这怎么可能? 这是我使用的getData方法

public function getData($sql, $data = null)
{
    $statement = $this->query($sql, $data);
    try
    {
        $result = $statement->fetchAll();
    }
    catch(Exception $e)
    {
        echo "Error: " . $e->getMessage() . " ";
        return array();
    }

    if(count($result) > 1)
    {
        return $result;
    }
    else if(count($result) == 1)
    {
        return $result[0];
    }
    else
    {
        return array();
    }
}

编辑:忘记提及,行在db中的字段中确实有值,位字段映射为布尔值。布尔值
false
将由
print\r
以您在问题中看到的方式打印。下面是一个测试脚本,它显示:

$a = array(new stdClass());
$a[0]->Payed = false;
print_r($a);

改为使用,您应该能够看到每个属性的数据类型以及布尔值内容。

位字段映射到布尔值。布尔值
false
将由
print\r
以您在问题中看到的方式打印。下面是一个测试脚本,它显示:

$a = array(new stdClass());
$a[0]->Payed = false;
print_r($a);

改为使用,您应该能够看到每个属性的数据类型以及布尔值内容。

Ahh这就解释了它。。。如何将其与json_encode结合使用,根据位值打印“真”或“假”<代码>$invoices=$DB->getData('SELECT*FROM invoices')
echo json\u encode($invoices)啊,这就解释了。。。如何将其与json_encode结合使用,根据位值打印“真”或“假”<代码>$invoices=$DB->getData('SELECT*FROM invoices')
echo json\u encode($invoices)