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 の単純な concatation(".") 演算子を試してください。コードは次のようになります。

$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 に答える