php如何通过url调用php文件中的方法

如题,比如现在有一个user.php,他里面有两个方法一个是login(),一个是register(),如何通过url来进行方法调用,a.php?act=login这种形式调用login()这个方法,a.php?act=register这种形式调用register()方法,麻烦详细点,谢谢

题主所描述的这种形式,是MVC设计模式的典型应用。

通过使用PSR4来实现自动加载,可以通过处理路由来实现

//处理路由的方法
static public function route()
{
//获取的模块
$_GET['m'] = isset($_GET['m']) ? $_GET['m'] : 'Index';

//获取行为动作action 又叫方法
$_GET['a'] = isset($_GET['a']) ? $_GET['a'] : 'index';

$controller = 'Controller\\' . $_GET['m'] . 'Controller';
//echo $controller;
$c = new $controller();

//$c->$_GET['a']();
call_user_func(array($c , $_GET['a']));
}

最终可实现以下形式:

追问

请问这种方式传参是怎么传的?也是a.php?a=login&username=aaa&password=bbb这种模式传的吗

追答

和我上面的说法一样:还拿index.php?m=user&a=login来举例

url所显示的就是这种形式
其中m所代表的是MVC中Controller中的一个模块,比如:user
a代表的是该模块下的某种方法,比如写在user里面的login方法和register方法
username和password是不会显示在url里面的
题主可以针对MVC设计模式做一些系统的分析和了解

温馨提示:答案为网友推荐,仅供参考