导航:首页 > 编程语言 > 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相关的资料

热点内容
android学到什么程度 浏览:370
如何加密一个小区 浏览:309
51单片机控制三相控制器 浏览:810
手机上什么解压软件可以强制解压 浏览:781
win7有自带编译器吗 浏览:541
转接器连了没有文件夹 浏览:570
二手开利螺杆压缩机 浏览:309
有php基础学java要多久 浏览:300
程序员税后工资多少可以跳槽 浏览:172
个别网站无法解析服务器的dns地址 浏览:972
安卓手机如何打开rmb文件 浏览:215
新生儿app叫什么 浏览:65
斗鱼加密怎么弄 浏览:763
为什么会加密不可上网 浏览:533
步步高手机编译时间啥意思 浏览:398
程序员复盘app 浏览:162
pdf确定 浏览:538
php连接mysql端口号 浏览:1001
id3算法在进行某个节点划分时 浏览:408
麦块服务器如何登录正版 浏览:687