当我尝试在php中使用GraphDb查询结果进行加法/乘法等时,我得到下面的错误并且不知道为什么。如果这很重要,在GraphDb中,值包含" ^^ xsd:integer"。
$generalTotal = 0;
$sql = "PREFIX c: <http://chinde.ro#>
select ?titlu ?numeAutor ?pret ?nrBuc ((?pret * ?nrBuc) as $total) where {
GRAPH c:Vanzari {
?idV c:carte ?idCarte.
?idV c:bucati ?nrBuc.
?idV c:idTranz c:'.$idTranzactie.'.
}
GRAPH c:Carti {
?idCarte c:titlu ?titlu.
?idCarte c:autor ?idAutor.
?idCarte c:pret ?pret.
}
GRAPH c:Autori {
?idAutor c:numeAutor ?numeAutor.
}
}";
$res = $client->query($sql);
foreach($res as $row){
print "Total: ".$row->total;
$generalTotal = $generalTotal + $row->total; // <-- errors appears cause of this
}
print $generalTotal;
注意:类EasyRdf_Literal_Integer的对象不可能 转换为int in 第107行的C:\ xampp \ htdocs \ LICENTA2 \ admin \ componenteAdmin \ comenzi.php
我该怎么做?我应该创建一个子查询,我从第一个查询中获取结果并将$ total的所有值添加到新参数中吗?或者是否有一种简单的方法可以使查询被php识别?