表单的PHP函数不工作

表单的PHP函数不工作,php,function,Php,Function,为什么这个php函数不起作用?它在不使用$element时不起作用。 对于$element,它总是返回test function setVar($element) { if(isset($_POST['$element'])){ $varname = $_POST['$element']; } else { $varname = 'test'; } return $varname; } $var = setVar('elemen

为什么这个php函数不起作用?它在不使用$element时不起作用。 对于$element,它总是返回test

function setVar($element)
 {
    if(isset($_POST['$element'])){
    $varname = $_POST['$element']; 
    } 
    else {
    $varname = 'test';
    }
    return $varname;
 }

 $var = setVar('element_6');
你可能是说:

... $_POST[$element] ...

没有报价?单引号内容永远不会被替换。

将代码中的
$\u POST['$element']
更改为
$\u POST[$element]
,应该可以正常工作$_POST['$element'])现在没有引用任何内容。

您需要将$\u POST['$element']更改为$\u POST[$element]。单引号之间的任何内容都按字面处理


请参阅:

您正在引用
$\u POST['$element']
。请注意,
$element
周围的单引号将其转换为静态字符串


解决方案:删除引号,它将正确解析
$element

较短版本
返回isset($\u POST[$element])?$\u POST[$element]:“test”