请问url中的index.php?action/method/key/value是如何实现的?
其中action:类名
method:类中的方法
key:变量
value:传递的变量值
现在有个类
class action{
function method(){
echo $_GET['key'];
}
}
请问,这是怎么实现的,我自己写的话,该如何通过上述的url访问到该类的方法,并输出值
其中action:类名
method:类中的方法
key:变量
value:传递的变量值
现在有个类
class action{
function method(){
echo $_GET['key'];
}
}
请问,这是怎么实现的,我自己写的话,该如何通过上述的url访问到该类的方法,并输出值
简单的你可以用 $_SERVER["QUERY_STRING"] 这个来取url ?后面的值 自己实现路由功能
一般的url在没设置的情况下只有index.php?name=yyyyy这种形式,根本访问不到类中的方法
这样的 url 目前是很少使用的,他是为了在 iis+php4 环境中模拟 path_info 的
而到 php5 后,iis+php5 已经能很好的支持 path_info 了所以应写作 index.php/action/method/key/value
没有了问号,是不是更像一个路径?
用 $_SERVER['PATH_INFO'] 取得参数串如果坚持那样用,则用 $_SERVER["QUERY_STRING"] 取得数据假定已取得数据在 $s 中
$s = 'action/method/key/value';$dict = array('action', 'method', 'key', 'value');
$_GET = array_combine( $dict, split('/', $s) );print_r($_GET);Array
(
[action] => action
[method] => method
[key] => key
[value] => value
)
我上面的只是个例子,我是想问如何通过这个url地址去访问到action的method,并为method传值
一般的url是index.php?a=xxx&b=yyy的方式,这种方式无法访问到action类的method方法啊,只传了几个参数