1

在执行 foreach 循环时,我无法动态命名我的 PHP 变量。这是我的代码:

$count = count($_POST['member']);
for ($i = 0; $i < $count; $i++) {
    $fname = $_POST['member'][$i]['fname'];
    $lname = $_POST['member'][$i]['lname'];
}

我如何将包含在 & 中的数字附加$i$fname&$lname以使$fname&$lname成为$fname1&$lname_2等等?或者有没有更好的方法来做到这一点?我没有尝试过任何工作。

4

4 回答 4

1
$i = 0;
$output = array();

foreach ($_POST['member'] as $member)
{
   $output['fname' . $i] = $member['fname'];   
   $output['lname' . $i] = $member['lname'];
   $i++;
}

extract($output);

虽然..为什么?

于 2012-12-04T05:09:13.810 回答
0

编辑:回答您的新问题 - 如何在会话中存储:

session_start();
$count = count($_POST['member']);
for ($i = 0; $i < $count; $i++) {
    $_SESSION["fname_{$i}"] = $_POST['member'][$i]['fname'];
    $_SESSION["lname_{$i}"] = $_POST['member'][$i]['lname'];
}
于 2012-12-04T05:05:56.283 回答
0

试试这个

$count = count($_POST['member']);
for ($i = 0; $i < $count; $i++) {
 $fname.'_'.$i = $_POST['member'][$i]['fname'];
 $lname.'_'.$i = $_POST['member'][$i]['lname'];
}

所以你可以访问 $fname_1,$fname_2 等...

于 2012-12-04T05:07:08.903 回答
-1

嗨,试试php的简单连接(“。”)运算符。所以你的代码将是

$count = count($_POST['member']);
for ($i = 0; $i < $count; $i++) {
    $fname = $_POST['member']['fname'.$i];
    $lname = $_POST['member']['lname_'.$i];
}
于 2012-12-04T05:06:16.583 回答