无论何时使用loadextension或选择loadextension,它都会给出内部服务器错误(sqlite3、spatialite、PHP windows)
请帮忙。我也给出了下面的代码。尝试了很多东西。它不起作用了 选择了一个spatialite数据库:无论何时使用loadextension或选择loadextension,它都会给出内部服务器错误(sqlite3、spatialite、PHP windows),php,windows,sqlite,gis,spatialite,Php,Windows,Sqlite,Gis,Spatialite,请帮忙。我也给出了下面的代码。尝试了很多东西。它不起作用了 选择了一个spatialite数据库: $db = new SQLite3('db2.sqlite'); 尝试了以下加载扩展: // $db->loadExtension('C:\PHP\ext\libspatialite-2.dll'); // $db->loadExtension('libspatialite-4.dll'); // $db->exec("SELECT InitSpatialMe
$db = new SQLite3('db2.sqlite');
尝试了以下加载扩展:
// $db->loadExtension('C:\PHP\ext\libspatialite-2.dll');
// $db->loadExtension('libspatialite-4.dll');
// $db->exec("SELECT InitSpatialMetadata()");
如果加载扩展被禁用,也尝试此功能:
// $db->exec("sqlite3_enable_load_extension(1)");
// $tvalue=$db->loadExtension('C:\\PHP\\sqliteext\\libspatialite-4.dll');
尝试在此处加载扩展:
$db->exec("SELECT load_extension('C:\\PHP\\sqliteext\\libspatialite-4.dll')");
phpinfo();
$result = $db->query("SELECT load_extension('libspatialite-4.dll')");
var_dump($result->fetchArray());
已尝试此查询:
$result = $db->query('select astext(geometry) from roads');
var_dump($result->fetchArray());
$rs = $db->query('SELECT spatialite_version()');
最常见的问题之一是使用libspatialite的一个版本,它是一个“合并”构建,其中包括sqlite。如果包含的sqlite版本与用于加载libspatialite的版本不匹配,则会出现问题(尤其是在64位windows上)。具有不同ABI的两个版本=崩溃 我没有一个好的解决方案,但您可以做一些事情来避免这种情况: 1.不要使用合并构建
2.确保sqlite的两个版本相同。什么失败了?有错误信息吗?