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

热点内容
如何将文件夹的内容发到微信 浏览:892
安卓手机emoji扁平怎么办 浏览:208
欧版三星s20怎么升级安卓11 浏览:104
我的世界服务器如何拉黑房子 浏览:480
linux服务器网络设置 浏览:106
在线编译代码怎么做 浏览:205
社会研究方法教程pdf 浏览:696
cad修改服务器地址 浏览:788
新手服务器装什么系统好 浏览:128
androidxmlui 浏览:713
星辰之恋在哪个app播 浏览:465
手机卡服务器出错误是怎么回事 浏览:536
cg编译器怎么设置 浏览:418
单片机教学视频哪个好 浏览:598
编译器错误了怎么办 浏览:77
看摩托车用什么app好 浏览:405
pdf转换excel在线转换 浏览:361
php多客服 浏览:746
语言编译程序如何分类 浏览:377
pdf下载哪个 浏览:77