打开.dbf文件时出现php dbase错误

时间:2012-02-16 22:28:14

标签: php apache2 dbf dbase

我正在尝试使用php5.3中的dbase库来打开.dbf文件。我已经在我的php5版本上安装并激活了dbase.so库,并且我正在执行以下代码:

$db = dbase_open('CMX.dbf', 0);
if( $db ){
    echo 'success';
    dbase_close($db);
}

其中CMX.dbf是Visual FoxPro9数据表,与启用读/写/执行权限的执行脚本位于同一目录中。

以下内容来自/var/log/apache2/error.log

PHP Warning:  dbase_open(): unable to open database CMX.dbf in /var/www/test.php on 

第28行

由于此错误/警告不是非常具有描述性,因此我遇到了追踪根本原因的问题。任何人都可以帮忙吗?

3 个答案:

答案 0 :(得分:0)

对PHP和Apache不是肯定的,但通常,当尝试连接到数据库文件(或Foxpro)时,典型的方法是对PATH进行连接,然后对表的名称执行查询。 ...

答案 1 :(得分:0)

试试这个(在foxpro中):

use cmx.dbf
copy to cmx_php.dbf type fox2x

我遇到了类似的问题,其中某些dbs会打开而其他人则不会。这允许我使用php/dbase.so

访问数据库

我在评论部分找到了信息here

答案 2 :(得分:-1)

试试这个:

$db_path = "CMX.dbf";

$db = dbase_open($db_path, 0) // 0=ReadOnly, 1=WriteOnly 2=ReadWrite 
       or die("Error! Could not open dbase database file '$db_path'.");

if( $db ){
    echo 'success';
    dbase_close($db);
}