在我的控制器中,我有以下几行
$request = Yii::$app->request;
print_r($request->post());
echo "version_no is ".$request->post('version_no',-1);
输出如下
Array
(
[_csrf] => WnB6REZ6cTAQHD0gAkoQaSsXVxB1Kh5CbAYPDS0wOGodSRANKBImVw==
[CreateCourseModel] => Array
(
[course_name] => test
[course_description] => kjhjk
[course_featured_image] =>
[course_type] => 1
[course_price] => 100
[is_version] => 1
[parent_course] => test
[version_no] => 1
[parent_course_id] => 3
[course_tags] => sdsdf
)
)
version_no is -1
所以这里post()的返回值包含version_no.But,当它被称为$request-> post(“version_no”)时,它没有返回任何东西(或$request-> post(“version_no”, – 1)返回默认值-1).
根据Yii 2.0文档,语法是正确的,应该返回post参数的值.
但是为什么它在我的情况下失败.post数组中有参数.但是当调用单个参数值时函数不返回.
解决方法:
您的参数在$_POST [‘CreateCourseModel’] [‘version_no’]等等,而$request-> post(‘version_no’, – 1)你试图得到$_POST [‘version_no’],这是没有定义的,所以它返回-1.所以要使用version_no
$data = $request->post('CreateCourseModel');
print_r($data['version_no']);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。