> 백엔드 개발 > PHP 문제 > PHP에서 2차원 배열의 필드 값을 제거하는 방법

PHP에서 2차원 배열의 필드 값을 제거하는 방법

青灯夜游
풀어 주다: 2023-03-16 22:04:02
원래의
2917명이 탐색했습니다.

구현 단계: 1. 2차원 배열의 내부 및 외부 레이어의 키 이름과 키 값을 탐색하기 위해 두 개의 foreach를 중첩합니다. 구문은 "foreach($arr as $k1=>$v2)입니다. {foreach($v1 as $k2=> ;$v2){//Loop body 문 블록}}"; 2. 루프 본문에서 "==="를 사용하여 지정된 필드 이름 요소를 찾고 unset( ) 해당 키 이름에 따라 요소를 삭제하려면 "if( $k==="Specified field name"){unset($arr[$k1][$k2]);}" 구문을 사용하세요.

PHP에서 2차원 배열의 필드 값을 제거하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 8.1, DELL G3 컴퓨터

PHP에서는 foreach 문과 unset() 함수를 사용하여 2차원 배열.

구현 단계:

1단계: 두 개의 foreach 문을 중첩하여 2차원 배열의 내부 및 외부 레이어의 키 이름과 키 값을 순회합니다.

foreach ($array as $key => $value){
    foreach ($value as $k => $v){
        //内层循环体语句块;
    }
}
로그인 후 복사
  • The 외부 레이어의 첫 번째 foreach 문: 주어진 항목을 탐색합니다. $array 배열의 외부 레이어는 각 루프에서 현재 배열의 값을 $value에 할당하고 키 이름을 $key에 할당합니다.

  • 내부 레이어의 두 번째 foreach 문: $value 하위 배열을 순회하고 각 루프에서 현재 배열의 값을 $v에 할당하고 키 이름을 $k에 할당합니다.

2단계: 루프 본문에서 "==="를 사용하여 지정된 필드 이름 요소를 찾고, unset() 함수를 사용하여 해당 키 이름에 따라 요소를 삭제합니다.

if($k==="指定字段名"){
   	unset($arr[$key][$k]);
}
로그인 후 복사

구현 코드:

function f($arr,$s){
	foreach ($arr as $key => $value){
	    foreach ($value as $k => $v){
			if($k===$s){
			   	unset($arr[$key][$k]);
			}
	    }
	}
	echo "删除后的二维数组:";
	var_dump($arr);
}
로그인 후 복사

Call f($arr)는 다음 함수를 처리하고 이름 필드 또는 점수 필드를 삭제합니다

$arr=array(
  array(
    'name' => "小明",
    'score' => 85,
  ),
  array(
    'name' => "小华",
    'score' => 92,
  ),
  array(
    'name' => "霄晓",
    'score' => 100,
  ),
  array(
    'name' => "萧洁",
    'score' => 99,
  ),
  array(
    'name' => "赵峰",
    'score' => 96,
  )
);
var_dump($arr);
f($arr,"name");
로그인 후 복사

PHP에서 2차원 배열의 필드 값을 제거하는 방법

f($arr,"score");
로그인 후 복사

PHP에서 2차원 배열의 필드 값을 제거하는 방법

설명: foreach 문

foreach는 특별히 설계된 문입니다. 배열 탐색의 경우 일반적으로 사용되는 메서드는 배열 탐색에 큰 편의를 제공합니다. PHP5 이후에는 객체도 탐색할 수 있습니다(foreach는 배열과 객체에만 적용 가능).

foreach 문은 배열 첨자에 관계없이 배열을 순회하며 불연속 인덱스 배열 및 문자열을 첨자로 사용하는 연관 배열에 사용할 수 있습니다.

foreach 문에는 두 가지 구문 형식이 있습니다.

구문 형식 1:

foreach ($array as $value){
    语句块;
}
로그인 후 복사
  • 주어진 $array 배열을 탐색하고 현재 배열의 값을 각 루프의 $value에 할당합니다.

구문 형식 2:

foreach ($array as $key => $value){
    语句块;
}
로그인 후 복사
  • 주어진 $array 배열을 탐색하고 각 루프에서 현재 배열의 값이 $value에 할당되고 키 이름이 $key에 할당됩니다.

Foreach 문은 반복될 때마다 배열 내부의 포인터가 한 단계 앞으로 이동하므로 다음 루프에서 다음 배열 요소를 얻습니다. 배열의 끝이 탐색될 때까지 탐색이 중지되고 루프가 종료됩니다.

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 PHP에서 2차원 배열의 필드 값을 제거하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿