通过传值就好了
var img = new Image();imgsrc = "exampleactiondata=" + encodeURIComponent(data);
然后在exampleaction中用get获取到数据
这样不会在页面上生成,也不会发生跳转(弱弱说句,这也是XSS攻击的一种途径)
当然也可以用ajax提交,原生的比较麻烦,可以考虑借用jquery ajax
一个很简单解决办法就是引用这个controller,然后使用
$c = new ControllerName($this->getRequest(), $this->getResponse());
然后$c->functionName()就行了。
但是,对于action使用actionStack更好,不是action的话,亲,我建议你把它移到M层中。
1 先造对象,再调用里面的方法
$sc=new \Home\Controller\IndexController(); 用绝对路径找
echo $sc->ShuChu();
2
$sc=new IndexController(); 用相对路径
echo $sc->ShuChu();
还可以使用thingkphp中的快捷方法
1 $sc=A("Index"); 使用TP框架的快捷方法A来创建控制器对象 ()内直接写控制器名
跨模块调用
$sc=A("Admin/Main"); 前面加上模块名 模块名/控制器名
R方法
调用对象 并且调用里面的方法
使用TP框架的R方法来自动调用某个控制器里的某个 *** 纵方法
echo R("Index/ShuChu"); 控制器名/方法名
添加进去代码以后,根据提示找到Controllerclassphp,手动添加如下代码:
/
获取当前Action名称
@access protected
/
protected function getActionName() {
if(empty($this->name)) {
// 获取Action名称
$offset=strrpos(get_class($this), '\\', -10); // 从尾部第 10 个位置开始查找
$this->name = substr(get_class($this),$offset+1,-10);
}
return $this->name;
}
复制代码
然后在可以在控制器中使用routesphp方法获取控制器名称了
以上就是关于TP3.2.3怎么获取当前路径全部的内容,包括:TP3.2.3怎么获取当前路径、TP框架控制器里面怎么调用另一个控制器的代码、thinkphp怎么访问一个控制器的不同方法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)