我有不同的mod,例如用户,统计数据等。如果我点击用户,我会收到有关用户的信息,如果我点击统计信息,我会获得用户统计信息等等。但是我想用php(而不是OOP)自动执行此操作 - 从 mods 文件夹中自动包含和调用文件(例如 users.php,statistics.php 等)。我知道php OOP有自动加载类功能。但我不知道PHP面向对象。如何在没有OOP的情况下使用PHP? 我想链接是这样的:
<a href='index.php?mod=users'>User list</a> <a href='index.php?mod=statistics'>Statistics</a>
答案 0 :(得分:2)
if (isset($_GET["mod"]) && file_exists("mods/" . preg_replace("/[^\w\d]+/", "", $_GET["mod"]) . ".php")) {
include "mods/" . preg_replace("/[^\w\d]+/", "", $_GET["mod"]) . ".php"; // or: require("mods/" . preg_replace("/[^\w\d]+/", "", $_GET["mod"]) . ".php");
}
答案 1 :(得分:0)
使用switch
/ case
或某些mod卫生系统。
// BASE_PATH is some previously defined application path constant
// fetch $mod from $_GET, and if set strtolower() it
switch($mod){
case 'user':
case 'admin':
case 'statistics':
$path = realpath(BASE_PATH . "/mods/{$mod}.php");
if(false === $path || !is_file($path)){
// error, 404?
}
require $path;
break;
default:
// invalid mod, 404?
break;
}
// and so forth