已经解决了,呵呵谢谢楼上兄弟 Catchable fatal error: Object of class variant could not be converted to string in 最近写一个转换程序的时候老是会发生这个错误。 具体呢是因为用PHP读取某个字段的时候由于字段值为空而PHP又无法识别其类型,如果用is_null或empty来判断也是判断不到的,而其还会报其他错误 最后在CSDN找到了解决的方法 例如要获取的字段名为username那就这样来测式它是不是为NULL 程序代码if( $rs->fields('username')->value==NULL){ echo '为NULL'; }else{ echo '不为NULL'; } 这样就有效的判断它是否为NULL了
{
echo "管理员姓名:".$rs->Fields[username]." 管理员密码:" .$rs->Fields[password]." </br>";
$rs->MoveNext();
} 看看手册
Object of a class can not be Convert to a String
指对象不能转成字符串贴完整代码和错误提示行及提示看看
$conn = new COM("ADODB.Connection") or die("Cannot start ADO");
$dsn = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=".realpath("DB.mdb");
$conn->Open($dsn);
$rs = new COM("ADODB.RecordSet");
$sql="select * from Admin";
$rs->open($sql,$conn,1,3);
While(!($rs->bof||$rs->eof))
{
echo "管理员姓名:".@$rs->Fields['name']." 管理员密码:" .@$rs->Fields['pass']." </br>";
}
$rs->movenext();
}
?>前提是有一个字段为空:
错误提示:
Catchable fatal error: Object of class variant could not be converted to string in D:\AppServ\www\Test.php on line 18
php+mysql
php+sqlite
php+oracle
都挺好,就是觉得和access,mssql搭配奇怪
Catchable fatal error: Object of class variant could not be converted to string in
最近写一个转换程序的时候老是会发生这个错误。
具体呢是因为用PHP读取某个字段的时候由于字段值为空而PHP又无法识别其类型,如果用is_null或empty来判断也是判断不到的,而其还会报其他错误
最后在CSDN找到了解决的方法
例如要获取的字段名为username那就这样来测式它是不是为NULL
程序代码if( $rs->fields('username')->value==NULL){
echo '为NULL';
}else{
echo '不为NULL';
}
这样就有效的判断它是否为NULL了