我有一个MS Access数据库。我想获取记录,然后写入二维数组。我可以但我认为记录集内存区和阵列内存区相同。因为如果我关闭记录集,我无法访问数组值。MS Access ADO记录集和二维数组
Error: Catchable fatal error: Object of class variant could not be converted to string in ...
$databaselocation = $_SERVER['DOCUMENT_ROOT'] . "ornek.mdb";
$conn = new COM('ADODB.Connection') or exit('Cannot start ADO.');
$conn->Open("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=$databaselocation");
$SQL1 = "SELECT * from konu";
$rs = new com("ADODB.RecordSet") or die("Recordset cant create!");
$rs->Open($SQL1,$conn,1,3);
$say = $rs->RecordCount();
echo "Row Counts: " . $say . "<br><br>";
$dizi = array(array());
for($a=0; $a<$say; $a++)
{
$dizi[$a][0] = $rs[0];
$dizi[$a][1] = $rs[1];
$rs->MoveNext;
}
$rs->Close(); $conn->Close();
$rs = null; $conn = null;
echo $dizi[0][0]; // this line ERROR same below
for($a=0; $a<$say; $a++)
{
echo $dizi[$a][0] . " - " . $dizi[$a][1] . "<br>"; // ERROR
}
你可以显示/打印$ dizi数据。的print_r($笛子); –
确实,'$ dizi'是否为空?运行'var_dump($ dizi)'。好奇,你有没有[PDO-ODBC](http://php.net/manual/en/ref.pdo-odbc.php)连接到MS Access与PHP API而不是COM接口? – Parfait