我如何检查 Moodle 中是否设置了 required_param?

How can I check required_param is set or not in Moodle?

我想检查 required_param('LType',PARAM_ALPHA) 是否已设置?我怎样才能做到这一点? 我用这个,但它不能正常工作:

 if(!isset(required_param('LType',PARAM_ALPHA)))
     {echo "salaam";exit;}

您应该将 required_param('LType',PARAM_ALPHA) 的结果与您期望的值进行比较,而不是使用 isset。例如:

if(required_param('LType',PARAM_ALPHA) != 'some value'){
    echo "salaam";exit;
}

或者:

if(required_param('LType',PARAM_ALPHA) === false){
    echo "salaam";exit;
}

required_param 表示参数必须存在(否则 Moodle 会立即抛出致命错误)。

如果参数是可选的,则使用 optional_param('name of param', 'default value', PARAM_TEXT) 代替。然后你可以查看是否有'default value'(我通常使用null作为默认值)。

在任何一种情况下,isset() 都没有意义,因为变量总是有一个赋值给它。