Слишком много вопросов и мало конкретки.
У вас есть phpфайл примерно такого содержимого:
<?
return [
101 => 'Москва',
204 => 'Санкт-Петербург',
// ...
];
API требует ID, а для вывода на сайте вам нужен Name, так как в url у вас будет примерно такое
?city_id=101
Файл с городами вы будете заполнять воучную, насколько я понял.
Если вы хотите получать айди по названию Вам нужно сделать функцию, которая будет делать примерно это
function getIdByName(string $name): int
{
$cities = require "cities.php";
foreach ($cities as $id => $name) {
if ((int) $_GET['citi_name'] === $name) {
return $id;
}
}
throw new Exception('город не существует');
}
Если вы хотите получать название по айди достаточно этого
$name = $cities[$_GET['city_id']] ?? 'Invalid name';