在SQL管理器(sqlite管理器)上执行以下查询,
SELECT ip FROM objects WHERE name="machine4"
返回预期值,ip address ='aaaa :: c30c:0:0:4'。
从php代码执行相同的查询,如下所示,
$db=open_database();
$query = $db->exec('SELECT ip FROM objects WHERE name="machine4"');
echo $query;
返回值1。
有什么东西逃脱了我对php的认识吗?
p.s。:我确信查询是在没有错误的情况下执行的,并且它们访问引用同一元素的同一个数据库。
答案 0 :(得分:2)
答案 1 :(得分:0)
解决,
首先我需要一个对象来获取值,为此目的,exec不返回一个对象,而是返回如上所述的行数。虽然来自php的query命令有一个要获取的对象。
这是应用于SQLITE3 db的查询的答案:
$db=open_database();
$query = $db->query('SELECT ip FROM objects WHERE name="machine4"');
if(!$query){
echo $db->lastErrorMsg();
} else {
$ip=$query->fetchArray(SQLITE3_ASSOC);
return $ip['ip'];