GOV/Webservice/PHP: Unterschied zwischen den Versionen
(Hinweise: $place->{'postal-code'}) |
(Alle Gemeinden und Städte eines Kreises ausgeben) |
||
Zeile 41: | Zeile 41: | ||
echo "$id has been replaced with $checkedId.\n"; | echo "$id has been replaced with $checkedId.\n"; | ||
} | } | ||
?></php> | |||
== Alle Gemeinden und Städte eines Kreises ausgeben == | |||
<php><?php | |||
$county = 'adm_131058'; // Rendsburg-Eckernförde (Schleswig-Holstein) | |||
$today = 2454665; // Julianisches Datum | |||
$client = new SoapClient('http://gov-test.genealogy.net/services/SimpleService?wsdl'); | |||
// 18 = Gemeinde, 95 = kreisfreie Stadt, 150 = Stadt, 145 = Markt | |||
$list = $client->searchDescendantsByTypeAtDate($county,'18,95,150,145',$today); | |||
$countyname = $client->getNameAtDate($county, $today,'deu'); | |||
echo "== Gemeinden und Städte in $countyname == \n"; | |||
$names = array(); | |||
foreach( $list->item as $id ) { | |||
$names[$id] = $client->getNameAtDate($id, $today,'deu'); | |||
} | |||
asort ($names); | |||
foreach ($names as $id => $name) { | |||
echo "* [[$id|$name]]\n"; | |||
} | |||
?></php> | ?></php> | ||
Version vom 17. Juli 2008, 08:27 Uhr
Position ausgeben
Dieses Skript gibt den (ersten) Namen und die Position des Ortes aus: <php><?php $readclient = new SoapClient('http://gov-test.genealogy.net/services/SimpleService?wsdl'); $place =$readclient->getObject('SCHERGJO54EJ');
$name = $place->name->value; $latitude = $place->position->lat; $longitude = $place->position->lon;
echo $name ." liegt bei ".$longitude."°O ".$latitude."°N.\n"; ?></php>
Position setzen
So setzt man die Position eines Objektes: <php><?php $readclient = new SoapClient('http://gov-test.genealogy.net/services/SimpleService?wsdl'); $writeclient = new SoapClient('http://gov-test.genealogy.net/services/ChangeService?wsdl'); $place =$readclient->getObject('SCHERGJO54EJ');
$place->position->lat=54.3936; $place->position->lon=10.3707;
$writeclient->saveObject($place,'5000','5000'); ?></php>
GOV-Kennung prüfen
Dieses Skript prüft, ob eine gegebene GOV-Kennung gültig ist: <php><?php $id = 'SCHERGJO54EJ';
$readclient = new SoapClient('http://gov.genealogy.net/services/SimpleService?wsdl'); $checkedId =$readclient->checkObjectId($id);
if( $id == $checkedId ) {
echo "$id is valid.\n";
} else if( $id == ) {
echo "$id is invalid.\n";
} else {
echo "$id has been replaced with $checkedId.\n";
} ?></php>
Alle Gemeinden und Städte eines Kreises ausgeben
<php><?php $county = 'adm_131058'; // Rendsburg-Eckernförde (Schleswig-Holstein)
$today = 2454665; // Julianisches Datum
$client = new SoapClient('http://gov-test.genealogy.net/services/SimpleService?wsdl');
// 18 = Gemeinde, 95 = kreisfreie Stadt, 150 = Stadt, 145 = Markt $list = $client->searchDescendantsByTypeAtDate($county,'18,95,150,145',$today);
$countyname = $client->getNameAtDate($county, $today,'deu'); echo "== Gemeinden und Städte in $countyname == \n";
$names = array(); foreach( $list->item as $id ) {
$names[$id] = $client->getNameAtDate($id, $today,'deu');
}
asort ($names); foreach ($names as $id => $name) {
echo "* $name\n";
}
?></php>
Hinweise
Auf Objektnamen mit Minuszeichen kann folgendermaßen zugegriffen werden: <php>$place->{'postal-code'}</php>