コード例 #1
0
 /**
  * {@inheritdoc}
  */
 public function viewElements(FieldItemListInterface $items, $langcode)
 {
     $elements = array();
     $geophp = \Drupal::service('geophp.geophp');
     $dumper = \Drupal::service('geocoder.dumper.' . $this->getSetting('dumper_plugin'));
     $provider_plugins = $this->getEnabledProviderPlugins();
     foreach ($items as $delta => $item) {
         /** @var \Geometry $geom */
         $geom = $geophp->load($item->value);
         $centroid = $geom->getCentroid();
         if ($addressCollection = Geocoder::reverse($provider_plugins, $centroid->y(), $centroid->x())) {
             $elements[$delta] = array('#markup' => $dumper->dump($addressCollection->first()));
         }
     }
     return $elements;
 }