请看这个例子:
if (strlen($_SESSION['userDetails']['THISNAME']) == 0)
{
$_SESSION['userDetails'][''.$THISNAME.'Error'] = "autofocus";
include "$docRoot/html/forms/reg/user_info.html.php";
exit();
}
我如何使用THISNAME
的名称来创建一个在名称上附加Error的新变量,所以在这个示例中输出将是THISNAMEError
?
谢谢!
答案 0 :(得分:2)
你已经知道“THISNAME”以测试它的长度。为什么你不能再把它放在你想要的地方?
但更常见的是,您可以使用array_keys()
获取数组的键列表,或使用foreach($input as $key=>$value)
循环显示它们。
答案 1 :(得分:1)
//if(strlen($_SESSION['userDetails'][$THISNAME]) == 0)
//|
//|->if you are checking for $THISNAME,
// why you then create a new varialbe $THISNAME.'Error' ?
//if(strlen($_SESSION['userDetails']["$THISNAME_Error"]) == 0) {
if( ! isset($_SESSION['userDetails']["$THISNAME_Error"])) {
$_SESSION['userDetails'][$THISNAME.'_Error'] = "autofocus";
//or
$_SESSION['userDetails']["$THISNAME_Error"] = "autofocus";
}
应该工作
答案 2 :(得分:0)
$required_fields = array( 'name', 'email', 'password', 'password_verification' );
$errors = array();
foreach ( $required_fields as $field )
{
if ( !isset($_POST[$field]) )
{
$errors[$field] = 'not set';
}
}
if ( count($errors) > 0 )
{
// there will be errors in thy forms
}
这是你在找什么?