导航:首页 > 编程语言 > phpactionurl

phpactionurl

发布时间:2023-03-09 16:46:17

php 如何通过url参数来访问类,类似于struts2的action调用。

用这种方式,最好的办法是写一个统一的入口文件来处理请求参数
// 常量-- 你的网站action路径
AC_ROOT = '../'
// 处理类
$action = $_REQUEST['action'] ? $_REQUEST['action'] : 'indexAction';
// 处理方法
$method =$_REQUEST['method'] ? $_REQUEST['method']: 'index';
// 查看类是否存在
$actoinfile = AC_ROOT . $action . '.php';
if(file_exists($actoinfile))
{
// 如果存在
require_once($actoinfile);
// 获取此类的对象
$obj = new $action ();
// 查看处理函数是否存在
if (!method_exists($obj , $method)) {
// 方法不存在返回错误
}
// 进入处理流程
$obj->{$method}();
} else {
// 类不存在 返回错误
}
建议: 你可以看看 Thinkphp 等框架 的入口处理方法, 对你应该很有帮助.

② php在提执行一个 $action之后如何返回原来的url

比如说你从test.php跳转到~/demo.php?action=xxx,顺便POST一个变量过来,刷新的时候文件开头判断这个变量存在不,不存在跳到原始url

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

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

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

//处理路由的方法
staticpublicfunctionroute()
{
//获取的模块
$_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']));
}

最终可实现以下形式:

④ php url 重复参数如何处理,像这样的url http://localhost/ds.phpaction=4&id=7&id=8&id=7

你可以使用 $_SERVER["QUERY_STRING"] 获取整个query_string,然后自己写个简单的代码来解析,类似于

<?php
$arr_kev=explode('&',$_SERVER['QUERY_STRING']);
$get=array();
foreach($arr_kevas$kev)
{
list($key,$val)=explode('=',$kev);
$get[$key][]=$val;
}
?>
阅读全文

与phpactionurl相关的资料

热点内容
sw服务器指定端口怎么填 浏览:189
java有哪些数组 浏览:984
程序员戴手表影响工作吗 浏览:235
游戏皇后解压视频 浏览:367
c语言怎么打开文件编译 浏览:436
手机上什么app可以设计logo 浏览:800
pid算法单片机 浏览:375
python数据精度 浏览:632
管什么小女孩App 浏览:192
phppdf转换成图片 浏览:468
十八讲pdf 浏览:619
mysql导入压缩文件 浏览:22
usb控制单片机 浏览:906
你为什么喜欢安卓手机 浏览:863
阿里云服务器购买和使用 浏览:389
单片机sp1 浏览:282
大学生玩猫咪解压 浏览:794
php附近的算法 浏览:346
黑马程序员培训机构怎么样 浏览:36
怎么查找服务器ip地址 浏览:371