对跨模块调用操作方法thinkphp实现概述

对跨模块调用操作方法thinkphp实现概述
用美元可以调用当前模块的方法,但在许多情况下,在当前模块调用其他模块的方法往往used.thinkphp有法两种特殊的资本和处理跨模块问题的方法调用。

目前,索引模块和用户模块和showName showName操作具体操作码为索引操作用户模块如下:
< PHP
类将延伸动作{
公共职能showName(){
呼应你好,世界;
}
}
>

我们将调用操作的showName以上索引模块索引操作。

通过方法的跨模块调用操作

该方法用于实例化其他模块(当新关键字),并且在实例化模块之后,模块内的操作可以以对象的方式调用。

在索引操作的索引模块,用户模块实现的showName操作实例调用。
< PHP
类的indexAction延伸动作{
公共功能索引(){
标题(内容类型文本/ HTML;字符集= UTF-8);
实例化用户模块
用户名=一个(用户的);
用户模块中的方法调用
为用户-> showName();
}
}
>

该方法还支持跨包调用和跨项目调用模块。语法如下:

一个('module名字
/常见示例如下
一个(用户)的当前项目 / /用户模块,如上面的例子
一个('admin: / / / /用户)用户模块称为管理项目
一个('admin / / /用户)用户模块称为管理包
一个('admin: / /工具/用户) / /用户模块称为管理项目的工具组

通过R方法的跨模块调用操作

ThinkPHP还提供了一个可以直接调用其他模块的操作方法和改变的方法,上面的例子中的R R法方法:
< PHP
类的indexAction延伸动作{
公共功能索引(){
标题(内容类型:文本/ HTML;字符集= UTF-8);
用户模块中的方法调用
R(用户/ showName);
}
}
>

R方法还支持跨包调用和跨项目调用方法,其语法如下所示:

R('module名称/操作)
/常见示例如下
R(用户 / / / showName ')showName用户模块调用当前的项目,如上面的例子
R('admin: / /用户/ showName ') / / showName方法调用用户模块管理项目
R('admin /用户/ showName ') / / showName方法调用admin包用户模块
R('admin: / /工具/用户/信息') / /信息方法的用户模块称为包的工具管理项目
r法接收参数
R方法也支持传入方法调用的参数,因为为了传递参数可能需要实际调动的操作。
r方法的第二个参数是一个数组,它将作为调用操作的参数传入:
R(用户/ showName,阵列(5));

这个例子表明showName操作将接受5这样的参数,相应的showName操作可能如下:
< PHP
类将延伸动作{
公共职能showName($id){
根据id参数代码访问用户信息
}
}
>

为了传递多个参数,R方法的数组()参数数组依次用多个元素定义。
是方法还是R法

从上面的例子中可以看到,方法和R方法都可以调用其他模块的操作。使用方法或R方法好吗建议如下:如果您想在其他模块中使用多个方法,建议使用一种方法,通过不同的方法调用模块的方式,避免重复实例化对象;如果您只想使用一种方法到其他模块,那么无疑R方法是最简洁的。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部