0

在开始之前,我应该让你知道我在 PHP 方面几乎没有经验。事实上,我几乎是从上周才开始使用它的,所以我使用它时就好像它是 JavaScript 或其他东西一样。

无论如何,我正在尝试通过 PHP 尽可能地简化在我的网站上提供的内容的动态服务,并且尽我所知。

所以,我这样做:

  1. 创建一个包含我当前使用的每个 URL 变量的数组。
  2. QueryingIDPage()包括一个FOR循环遍历数组的循环,将索引位置与当前 URL 变量进行比较,如果匹配则返回索引位置。
  3. 使用返回的字符串来决定要包含哪些内容。

 

前 <!DOCTYPE>

<?php
    $root = $_SERVER["DOCUMENT_ROOT"];
    $array_IDs = array("404", "home", "item2", "item3", "item4");
    global $root, $array_IDs;
?>

<头部>

<?php
    function IDPage(){
        for ($i = 0; $i < count($array_IDs); $i++){
            if (isset($_GET[$array_IDs[$i]])){
                return $array_IDs[$i];
            }
        }
    }
?>

<正文>

<article>
    <?php 
        $response = IDPage();

        if ($response == "404"){
            include($root . "/path/file.ext");
        }

        if ($response == "home"){
            include($root . "/path/file.ext");
        }

        if ($response == "item2"){
            include($root . "/path/file.ext");
        }

        if ($response == "item3"){
            include($root . "/path/file.ext");
        }

        if ($response == "item4"){
            include($root . "/path/file.ext");
        }
    ?>
</article>

使用当前设置,该数组始终返回 0,并且稍微深入一点,这似乎是因为count()认为它$array_IDs没有值。但是,如果您将FOR循环放置在与<body>s 相同的块中(当然,修改代码以使其在同一块中工作),则此方法有效。

再说一次,我知道它很粗糙,但它只是一个小站点,我不知道有什么更好的,我认为我还没有准备好进入数据库等等。不过,如果有人有更好的想法,请随时告诉我,只要我有能力。:L

4

1 回答 1

1

在函数中使用global关键字在函数中导入该变量:

function IDPage(){
    global $array_IDs;
    for ($i = 0; $i < count($array_IDs); $i++){
        if (isset($_GET[$array_IDs[$i]])){
            return $array_IDs[$i];
        }
    }
 }
于 2012-06-21T22:36:47.897 回答