我在页面上有一个按钮,当用户按下按钮时,它会在页面上创建另一个“联系人”字段。联系人字段允许他们将新联系人添加到他们的个人资料。同样,他们可以根据需要多次单击按钮,它将创建许多“联系人”字段。

但是问题是,我很难确定已经添加了多少个“联系人”字段。这是单击按钮时生成的一些HTML:

<div class="item">
    <label for="in-1v">First Name <span>*</span></label>
    <div class="text">
        <input type="text" id="in-1-0" name="member[0][fname]" value="" />
    </div>
</div>
<div class="item">
    <label for="in-2-0">Last Name <span>*</span></label>
    <div class="text">
        <input type="text" id="in-2-0" name="member[0][lname]" value="" />
    </div>
</div>




每次单击按钮时,name =“ member [0] [lname]”将变为name =“ member [1] [lname]”,并且每次单击按钮时将继续增加。如前所述,用户可以在页面上执行任意多次操作。

我正在使用PHP遍历多维数组:

$array = $_POST['member'] ;
foreach($array as $array_element) {
  $fname = $array_element['fname'];
  $lname = $array_element['lname'];
}


如何使用PHP确定已添加的文件数,以便可以遍历它们?

任何帮助是极大的赞赏!

最佳答案

您可以像这样简单地得到一个计数:

$count = count($_POST['member']);


然后,您还可以修改循环,如下所示:

// First check to see if member is set and is a valid array
if (!empty($_POST['member']) && is_array($_POST['member'])) {
    $count = count($_POST['member']);
    for ($i = 0; $i < $count; $i++) {
        $fname = $_POST['member'][$i]['fname'];
        $lname = $_POST['member'][$i]['lname'];
    }
}

09-30 19:01