PHP 양식에서 이름이 비슷한 입력 필드가 여러 개 있는 문제가 발생할 수 있습니다. 배열과 같은 구조. 그러나 PHP에서 이러한 값에 액세스하면 해당 값이 단일 문자열로 출력되는 것을 볼 수 있습니다. 이 문서에서는 이 문제를 다루고 입력 배열을 사용 가능한 PHP 배열로 변환하는 솔루션을 제공합니다.
문제를 설명하려면 다음 HTML 형식을 고려하세요.
<input type="text" name="name[]" /> <input type="text" name="email[]" /> <input type="text" name="name[]" /> <input type="text" name="email[]" /> <input type="text" name="name[]" /> <input type="text" name="email[]" />
이 형식이 다음과 같은 경우 제출되면 해당 PHP 변수가 배열로 채워집니다.
$name = $_POST['name']; $email = $_POST['email'];
그러나 값을 출력하려고 하면 해당 변수가 다음과 같이 표시되는 것을 볼 수 있습니다. 단일 문자열:
foreach ($name as $v) { print $v; } foreach ($email as $v) { print $v; }
name1name2name3email1email2email3
이 문제를 해결하려면 두 배열을 반복하고 도우미 함수를 사용하여 해당 값을 결합할 수 있습니다.
foreach ($name as $key => $n) { print "The name is " . $n . " and email is " . $email[$key] . ", thank you\n"; }
이 패턴을 확장할 수 있습니다 추가 입력 필드를 처리하려면:
$location = $_POST['location']; foreach ($name as $key => $n) { print "The name is " . $n . ", email is " . $email[$key] . ", and location is " . $location[$key] . ". Thank you\n"; }
이 솔루션을 사용하면 체계적이고 접근 가능한 방식으로 입력 값에 액세스할 수 있어 다음을 수행할 수 있습니다. 필요에 따라 추가 처리 또는 조작을 수행합니다.
위 내용은 PHP에서 배열과 유사한 양식 입력을 올바르게 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!