我有一个 .shp 格式的文件,我需要它以编程方式将其转换为 Excel 电子表格。我想使用 PHP 或 JavaScript 来做到这一点。
问问题
2952 次
1 回答
2
一旦我使用了小型 PHP lib ShapeFile,您就可以在phpclasses.org中获得它。虽然它的设计不太好,但它确实有效。
这是我自己的代码中的一个小例子:
require_once 'lib/ShapeFile.inc.php';
$shp = new ShapeFile($filename, array('noparts' => false));
if ($shp->getError() !== '')
print_r($shp->getError());
else
{
$records = array();
while ($record = $shp->getNext())
{
$dbf_data = $record->getDbfData();
$shp_data = $record->getShpData();
//Dump the information
$obj = array(
'type' => $shp->getShpTypeName($record->getShpType())
);
$obj['shape'] = $shp_data;
$obj['meta'] = $dbf_data;
$records[] = $obj;
}
}
print_r($records);
因此,之后$records
包含 shapefile 中的所有数据。当然,您需要一些时间来弄清楚 shapefile 是什么以及它可以保存哪些数据(假设您不熟悉它)。从维基百科开始。实际上有一堆带有一些标签的数组。
然后使用一些 php excel lib(只是在里面寻找),你就完成了:)
于 2012-01-27T09:43:59.700 回答