首页 » SEO优化 » actionphp传参数技巧_在yii2中让你action参数支持POST数据的小方法

actionphp传参数技巧_在yii2中让你action参数支持POST数据的小方法

访客 2024-11-06 0

扫一扫用手机浏览

文章目录 [+]

class RaController extends Controller { public $enableCsrfValidation = false; public function actionSay($username = '',$city = ''){ echo \"大众{$username} 来自 {$city}\"大众; }}

这里actionSay对应的url为index.php?r=ra/say,而 $username 和 $city 值的获取来自于url的参数,比如

index.php?r=ra/say&username=abei2017&city=洛阳

总结 在yii2中,action参数都是来自于GET。

actionphp传参数技巧_在yii2中让你action参数支持POST数据的小方法

但是有的时候你可能须要让action的参数来自于POST要求,怎么办?

actionphp传参数技巧_在yii2中让你action参数支持POST数据的小方法
(图片来自网络侵删)

重载runAction即可,yii2为掌握器供应了runAction方法,它卖力天生一个详细的Action工具并通报参数,我们可以通过复写它来实现,你可以看下yii2的生命周期来对其进行更好的理解。

那就开始干吧~,对上面的代码复写runAction

class RaController extends Controller { public $enableCsrfValidation = false; public function runAction($id, $params = []){ $params = ArrayHelper::merge(Yii::$app->request->post(),$params); return parent::runAction($id, $params); } public function actionSay($username = '',$city = ''){ echo \公众{$username} 来自 {$city}\"大众; }}

复写了runAction后,它将浸染于此掌握器的所有action,当然你也可以通过runAction的$id来浸染于某个action。
比如

public function runAction($id, $params = []){ if($id == 'say'){ $params = ArrayHelper::merge(Yii::$app->request->post(),$params); } return parent::runAction($id, $params);}

现在去试试吧,对say动作提交POST数据username和city,成功吸收。

相关文章

我国土地利用分类代码的构建与应用

土地利用分类代码是我国土地管理的重要组成部分,是土地资源调查、规划、利用和保护的依据。土地利用分类代码的构建与应用显得尤为重要。本...

SEO优化 2025-02-18 阅读1 评论0

微信跳转微信支付便捷支付体验的秘密武器

移动支付已成为人们日常生活中不可或缺的一部分。作为我国领先的社交平台,微信支付凭借其便捷、安全的支付方式,深受广大用户的喜爱。而微...

SEO优化 2025-02-18 阅读1 评论0

探寻会计科目代码背后的奥秘分类与

会计科目代码是会计信息系统中不可或缺的组成部分,它将企业的经济活动进行分类和归纳,为会计核算、财务分析和决策提供重要依据。本文将从...

SEO优化 2025-02-18 阅读1 评论0