鉴于,
$required_fields = array('name', 'location', 'email');
foreach ($required_fields as $fieldname) {
if (isset($_POST[$fieldname]) || !empty($_POST[$fieldname])) {
}
现在在if语句中,我需要像
这样的东西$fieldname = $_POST[$fieldname];
所以我得到了
$ name =“name”,$ location =“location”和$ email =“email”
我试过$ fieldname = $ _POST [$ fieldname]但它不起作用。我怎么能动态地做到这一点?
答案 0 :(得分:9)
答案 1 :(得分:3)
答案 2 :(得分:1)
$required_fields = array('name', 'location', 'email');
extract(array_intersect_keys($_POST, array_flip($required_fields)));
这将为$required_fields
中命名的每个变量创建局部变量,只有它存在于$ _POST数组中。否则,变量将是未定义的。
答案 3 :(得分:-2)
您也可以使用
eval("$".$fieldname."='".$_POST["fieldname"]."';");