Обработка трюка с несколькими местами - PullRequest
1 голос
/ 08 марта 2019

В настоящее время у меня есть 3 таблицы стран, маршрутов и route_place

Страны

  • ID
  • имя

таблица маршрутов

  • ID
  • название

таблица route_place

  • ID
  • parent_id (идентификатор из таблицы маршрутов)
  • из (id из страны)
  • к (id из стран)
  • PLACE_NAME

У меня есть 3 пункта назначения Китай - Дубай - Лондон из таблицы стран, в настоящее время я сохраняю данные в таблицу route_place следующим образом:

  • Китай (из колонки) - Дубай (в колонку)
  • Дубай (из колонки) - Лондон (в колонку)

Я хотел сохранить данные в route_place следующим образом

  • Китай (из колонки) - Дубай (в колонку)
  • Китай (из колонки) - Лондон (в колонку)
  • Дубай (из колонки) - Лондон (в колонку)

Я не могу понять логику через час, есть ли какой-то метод или какие-то рекомендации для него

Например,

, я отправил маршруты Китай - Дубай - Лондон и вручную выбрал маршрут по порядку

  • Китай - Дубай
  • Дубай - Лондон

Я хочу, чтобы он автоматически создал другой маршрут из Китая в Лондон, и мне не нужно было вставлять его вручную, потому что Китай - это также поездка в Лондон в один конец.

Ответы [ 2 ]

0 голосов
/ 11 марта 2019

это должно сработать

$array = array('China','Dubai','London');

$array_length = count($array);

for ($i = 0; $i < $array_length - 1; $i++){

  for($j = $i+1; $j < $array_length; $j++){

    echo $array[$i] . " to " . $array[$j] .'<br>';

  }

}
0 голосов
/ 08 марта 2019

Поскольку вам нужна только логика, вот мое решение при использовании PHP. Допустим, вы запрашиваете все отдельные пункты назначения в таблице route_place (route_place-> to) и вставляете ее в переменную $ destination.

foreach($destination as $destination) {
    foreach($route_place as $route_place) {
        if ($route_place->from == $destination->to and $route_place->id != $destination->id) {
            //save this route to database
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...