База станций метро

Иногда бывает нужно добавить станцию метро как свойство некоторого инфоблока. Это может пригодится, если, например, в инфоблоке хранится информация о точках продаж или любых других географических объектов.

Самый простой способ: добавить в инфоблок свойство типа «Привязка к элементам» и создать новый инфоблок, элементами которого и будут станции метро.

Следующий код считывает построчно файл со станциями метро и создает элементы инфоблока:

<?
CModule::IncludeModule('iblock');
$IBLOCK_ID = 1;
$metro_stations = file('metro_ru.txt');
$i = 0;
foreach($metro_stations as $station)
{
	$i = $i + 10;
	$el = new CIBlockElement;
	$arLoadProductArray = array(
		"MODIFIED_BY"    => $USER->GetID(),
		"IBLOCK_SECTION_ID" => false,
		"IBLOCK_ID"      => $IBLOCK_ID,  
		"SORT"           => $i,  
		"NAME"           => trim($station), 
		"ACTIVE"         => "Y"
	);
	if($ID = $el->Add($arLoadProductArray)) echo 'Станция «'.$station.'» добавлена<br>';
}
?>

Если сайт двухязычный, то могут понадобится названия станций на английском языке (вернее, просто транслитом).

Базы станций московского метро

  • metro_ru.txt (4.10 кб) – названия станций на русском языке
  • metro_en.txt (2.42 кб) – названия станций в транслите
  • metro_en_ru.txt (6.69 кб) – названия станций на русском и в транслите (через слэш)

Все файлы с базами станций метро в кодировке UTF-8. Если ваш сайт работает в кириллице, то просто измените кодировку нужного файла на кириллическую.

Дата: 13 марта 2011
Теги: Станции метро
Добавить в закладки:

Комментарии (2)

Temy, 13 Марта 2011

Полезная вещь, но по мимо станций метро иногда нужны еще выборки по округам и районам Москвы.
Например: метро Беговая -> САО -> Хорошевский район
Полезная вещь, но по мимо станций метро иногда нужны еще выборки по округам и районам Москвы. Например: метро Беговая -> САО -> Хорошевский район

click through the following document, 14 Ноября 2013

Бесполезная вещь. Помимо станций должны быть ещё линии и привязка станций к линиям
Бесполезная вещь. Помимо станций должны быть ещё линии и привязка станций к линиям


Администратор запретил оставлять комментарии