if (mb_strpos('Москва|Санкт-Петербург|Севастополь', $form['city']) !== false) {
unset($form['region']);
}
$params = [
'geocode' => preg_replace(['#^(, )#', '#(, ){2,}#', '#(, )$#'], ['', ', ', ''], getnamebyid('region', $form['region']) . ', ' . $form['city'] . ', ' . $form['street'] . ', ' . $form['house'] . ', ' . $form['name']),
'format' => 'json',
'results' => 1,
'apikey' => 'абракадабра'
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://geocode-maps.yandex.ru/1.x/?' . http_build_query($params, '', '&'));
curl_setopt($ch, CURLOPT_ENCODING, 0);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLINFO_HEADER_OUT, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 15);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
$response = json_decode(curl_exec($ch));
curl_close($ch);
if ($response->response->GeoObjectCollection->metaDataProperty->GeocoderResponseMetaData->found > 0) {
$coordinate = explode(' ', $response->response->GeoObjectCollection->featureMember[0]->GeoObject->Point->pos);
$form['coordinates'] = $coordinate[1] . ',' . $coordinate[0];
}
else {
$form['coordinates'] = '55.75399400,37.62209300';
}
file_put_contents(PATH . '/map/geocode.yandex.http.txt', intval(file_get_contents(PATH . '/map/geocode.yandex.http.txt')) + 1);
chown(PATH . '/map/geocode.yandex.http.txt', 'tvoyadres');
chgrp(PATH . '/map/geocode.yandex.http.txt', 'tvoyadres');
Добрый день! А не может быть такого, что по вашему ключу еще кто-то запросы в API Геокодера слал?