多个链接,多个GET []

时间:2015-08-01 18:47:05

标签: php html get

我正在撰写我的第一个大项目。

我有一个带有许多链接的导航栏,现在链接到" index.PHP?a = value& b = value"

在我的索引页面上,我有以下内容:

if((($_GET['a']) == "value") && (($_GET['b']) == "value")) {
     *** soms code ***
}
if((($_GET['a']) == "value") && (($_GET['b']) == "value2")) {
     *** soms code ***
}

等等...

但是有50个更多的链接我的index.PHP文件会有点混乱。

我考虑将代码更改为:

if((($_GET['a']) == "value") && (($_GET['b']) == "value")) {
     include("somefile.php");
}

Wat是最好的解决方法吗?也许onclick = ..?

请您对此有所了解

3 个答案:

答案 0 :(得分:0)

你可以这样简化

 self.viewController.performSegueWithIdentifier("DOES_NOT_EXIST", sender: self)

或者如果您想将代码放在更多文件中,请尝试以下方法:

if ($_GET['a'] == "value") {

    if ($_GET['b'] == "value") {
         *** soms code ***
    } elseif ($_GET['b'] == "value2") {
         *** soms code ***
    } elseif ($_GET['b'] == "value3") {
         *** soms code ***
    }

    // ...

}

答案 1 :(得分:0)

你写了一个大项目。你为什么不使用一个严肃的框架作为Laravel等?这使得制作可扩展和可维护的应用程序变得不那么复杂。

从索引中分离路由。单独的职责(演示,业务逻辑等)

阅读有关Laravel中有效路由的更多信息:http://laravel.com/docs/master/routing#basic-routing

答案 2 :(得分:0)

这是很久以前解决的问题。在现代框架中,它被称为路由,你可以查找它。

一个简化的例子是将数组映射到系统上的文件,然后调用一个函数来包含相应的文件。

$routes = [
    'value1' => ['value1' => 'file1.php'],
    'value2' => ['value2' => 'file2.php']
]

function route($value1, $value2) {
    global $routes;
    require($routes[$value1][$value2];
}

然后在index.php中你只需要调用

route($_GET['a'], $_GET['b']);

这个例子不是字面意思,只是一个例子

正如另一个答案中所建议的那样,考虑使用框架可能是个好主意。它们存在是有原因的。