$time = 0;
$i = 0;
function step($paths, $pathDone, $point, $target, $time, $i, $pointNames, $transportName){
if ($i == 0){
echo "Отправная точка: $pointNames[$point] <br>";
}
$i++;
$pathDone[$i] = $point;
echo "Exit was found in " . count($pathDone)." steps!"; } else {
foreach ($paths[$point] as $station => $times){
if (in_array($station, $pathDone) != True ){ $canGet = $paths[$point][$station];
echo "Ехать $canGet[time] минут посредством {$transportName[$canGet[by]]} <br>";
$point = $station;
step($paths, $pathDone, $point, $target, $time, $i, $pointNames, $transportName);
}
}
}
}
JHBhdGhEb25lID0gYXJyYXkoKTsKJHRpbWUgPSAwOwokaSA9IDA7CgpmdW5jdGlvbiBzdGVwKCRwYXRocywgJHBhdGhEb25lLCAkcG9pbnQsICR0YXJnZXQsICR0aW1lLCAkaSwgJHBvaW50TmFtZXMsICR0cmFuc3BvcnROYW1lKXsKCWlmICgkaSA9PSAwKXsKCQllY2hvICLQntGC0L/RgNCw0LLQvdCw0Y8g0YLQvtGH0LrQsDogJHBvaW50TmFtZXNbJHBvaW50XSA8YnI+IjsKCX0KCSRpKys7CgkkcGF0aERvbmVbJGldID0gJHBvaW50OwoJaWYgKGFycmF5X2tleV9leGlzdHMoJHRhcmdldCwgJHBhdGhzWyRwb2ludF0pID09IFRydWUpewoJCWVjaG8gIkV4aXQgd2FzIGZvdW5kIGluICIgLiBjb3VudCgkcGF0aERvbmUpLiIgc3RlcHMhIjsKCQlleGl0KCk7Cgl9IGVsc2UgewoJCWZvcmVhY2ggKCRwYXRoc1skcG9pbnRdIGFzICRzdGF0aW9uID0+ICR0aW1lcyl7CgkJCWlmIChpbl9hcnJheSgkc3RhdGlvbiwgJHBhdGhEb25lKSAhPSBUcnVlICl7CgkJCQkkY2FuR2V0ID0gJHBhdGhzWyRwb2ludF1bJHN0YXRpb25dOwoJCQkJZWNobyAi0JXRhdCw0YLRjCAkY2FuR2V0W3RpbWVdINC80LjQvdGD0YIg0L/QvtGB0YDQtdC00YHRgtCy0L7QvCB7JHRyYW5zcG9ydE5hbWVbJGNhbkdldFtieV1dfSA8YnI+IjsKCQkJCSRwb2ludCA9ICRzdGF0aW9uOwoJCQkJc3RlcCgkcGF0aHMsICRwYXRoRG9uZSwgJHBvaW50LCAkdGFyZ2V0LCAkdGltZSwgJGksICRwb2ludE5hbWVzLCAkdHJhbnNwb3J0TmFtZSk7CgkJCQkKCQkJfQoJCX0KCQoJfQp9
$pathDone = array();
$time = 0;
$i = 0;
function step($paths, $pathDone, $point, $target, $time, $i, $pointNames, $transportName){
if ($i == 0){
echo "Отправная точка: $pointNames[$point] <br>";
}
$i++;
$pathDone[$i] = $point;
if (array_key_exists($target, $paths[$point]) == True){
echo "Exit was found in " . count($pathDone)." steps!";
exit();
} else {
foreach ($paths[$point] as $station => $times){
if (in_array($station, $pathDone) != True ){
$canGet = $paths[$point][$station];
echo "Ехать $canGet[time] минут посредством {$transportName[$canGet[by]]} <br>";
$point = $station;
step($paths, $pathDone, $point, $target, $time, $i, $pointNames, $transportName);
}
}
}
}