Hi Jochen, Assuming you are using Shapefiles maybe you can achieve your second goal with the base module of PHP
http://de3.php.net/manual/de/function.dbase-numrecords.php HTH Nicol Am Donnerstag, den 06.11.2008, 12:10 +0100 schrieb Jochen Wagner: > Hi list, > I would like to list from any layer ($ qlayer) only the field names of > the attribute tables and the number of objects in the table. > > With this code it works already: > > //loading mapfile > $map= ms_newMapObj($mapfilepath.'\ > demo.map'); > > //set layer > $layer = $map->getLayerByName($qlayer); > > //rectquery via mapextent > @$datQuery = $layer->queryByRect($map->extent); > > //if query is successful > if ($datQuery == MS_SUCCESS) { > //number of objects > $resnum = $layer->getNumResults(); > echo 'Anzahl: '.$resnum.'<br>'; > > $layer->open(); > $result = $layer->getResult(0); > $shpobj = $layer->getShape($result->tileindex,$result->shapeindex); > > //read attribute table > $attr = $shpobj->values; > foreach($attr as $name=>$wert) { > echo 'Feld: '.$name.'<br>'; > } > } > $shpobj->free(); > $layer->close(); > > However, this method has the disadvantage using a layers with many > records the script takes a very long time, I guess because I have a > query about the whole issue run. > Has someone an approach for me, getting > 1. the field names of the table and > 2. the number of objects in the table > performantly using MapScript ? > thanks > Jo > _______________________________________________ > mapserver-users mailing list > [email protected] > http://lists.osgeo.org/mailman/listinfo/mapserver-users _______________________________________________ mapserver-users mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/mapserver-users
