php - 获取 switch 语句中的案例列表

标签 php dynamic switch-statement

我使用 PHP Switch 语句来确定我网站的页面。所以这是一个例子:

switch($page) {
    case "about":
        $title_name = "About Us";
        $page_content = "includes/about-us.php";
        include("inner.php");
    break;
    case "services":
        $title_name = "Services";
        $page_content = "includes/services.php";
        include("inner.php");
    break;
}

我的文件结构是 index.php?page=about,它使用 htaccess 转换为 /about/

我想做的是在该 switch 语句中获取我的所有页面,并自动抓取它并将其放入列表中,这样我就可以自动将其写入我的页脚页面,我将在其中包含所有链接。

因此,与其手动输入页脚中的所有链接,不如:主页 |关于我们 |服务 | FAQ,它会根据我在 Switch 语句中提供的页面自动拉取它。

有没有办法做到这一点?如果能够自动添加新页面也很好,它会为新页面添加新案例,并自动在 includes 文件夹中创建页面。

如果有人能指出正确的方向,我将不胜感激。根据我的理解,我不相信你可以用 switch 语句来做到这一点,我必须重新设计调用页面的方式,对吗?

最佳答案

$pages = array('about'=> 'About Us', 'services' => 'Services');

if (array_key_exists($page, $pages)) {
   $title_name = $pages[$page];
   $page_content = "includes/$page.php";
   include('inner.php');
}

对于页脚,您可以遍历页面列表。要添加新页面,只需将其添加到数组并创建相应的文件即可。

但要回答您的问题:不,您不能在运行时分析代码语句。

关于php - 获取 switch 语句中的案例列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6884559/

相关文章:

java - 在运行时向 Hibernate 实体动态添加字段

c - 在开关盒中将 int 与 int 数组的元素匹配

c - 这种切换字符串的方式有效吗?有没有效率更高的?

javascript - 单选按钮和复选框。防止更改值属性

php - 格式参数不正确

php - MongoDB $lookup 的结果非常慢

c - 带 malloc 的动态数组不起作用,但固定大小可以 - C

php - 从 array_rand 中排除选举

c# - 动态按钮不调用点击事件

c# - 如何在 C# 中正确使用 switch case block ?