PHP / MySQL定价路线

时间:2017-02-13 19:10:25

标签: php mysql routes permutation price

我正在尝试为路由服务管理面板创建定价表单。

让我们说我在数据库中得到了分数A,B,C和D. 这些是从一张桌子收集的。 在下一张表格中,我希望将一个'来自','添加到'和'价格'。

在四点的例子中,我需要以下价格输入:
A< - >乙
A< - &以及c
A< - > d
B< - &以及c
B< - > d
℃下; - > d
(路线的每个可能的一条腿一个)。

我应该采取什么方法,我得到点的结果,我生成输入字段?我可以用PHP解决这个问题,还是我需要用js写它?

手动输出这些输入字段没有问题,问题是它需要自动化,因为点的数量可能从至少两个点变化到15点。 / p>

1 个答案:

答案 0 :(得分:1)

这是一个简单的函数,它将获取一个点列表并返回一个二维数组,其中包含您所请求的所有点组合。

Demo

<?php

function calculateRoutes($points){
    //our output array
    $out = array();

    //reset the index of our points to ensure they are 0 to N-1
    $points = array_values($points);

    //loop over the points once
    for($i=0; $i<count($points) - 1; $i++){
        //loop over the points again, offset by 1
        for($j=$i+1; $j<count($points); $j++){
            //add to our output array the two points
            $out[] = array($points[$i], $points[$j]);
        }
    }

    //return the final result
    return $out;
}

$points = array('A', 'B', 'C', 'D');

$routes = calculateRoutes($points);

print_r($routes);