> 백엔드 개발 > PHP 문제 > PHP 동일한 배열 대체 키 값

PHP 동일한 배열 대체 키 값

WBOY
풀어 주다: 2023-05-19 10:36:38
원래의
586명이 탐색했습니다.

개발 중에는 배열을 작동해야 하는 경우가 많습니다. 일반적인 요구 사항 중 하나는 키 이름을 "user_id"에서 "id"로 바꾸는 것과 같이 배열의 키 이름을 바꾸는 것입니다. PHP에서는 대체를 위해 배열의 array_combine 및 array_values ​​함수를 사용할 수 있지만 이러한 함수에는 몇 가지 제한 사항이 있으므로 키 값을 동일한 배열로 대체하려면 다른 방법을 사용해야 합니다.

1. array_map 함수를 사용하세요.

PHP의 array_map 함수를 사용하면 배열의 각 키나 값에 콜백 함수를 적용할 수 있습니다. 이 함수를 사용하여 배열의 각 요소에 콜백 함수를 적용하여 키 이름을 바꿀 수 있습니다.

샘플 코드:

$arr = ['user_id' => 1, 'user_name' => 'Tom', 'user_age' => 20];

$new_arr = array_map(function($key) {
  if($key == 'user_id') {
    return 'id';
  }
  return $key;
}, array_keys($arr));

$arr = array_combine($new_arr, array_values($arr));
로그인 후 복사

위 코드에서는 array_map 함수를 사용하여 배열의 각 키 이름에 콜백 함수를 적용합니다. 키 이름이 "user_id"이면 "id"로 바꾸고, 그렇지 않으면 다음을 반환합니다. 원래 키 이름. 그런 다음 array_combine 함수를 사용하여 새 키 이름과 원래 값을 새 배열로 다시 결합합니다.

2. foreach 루프 사용

동일한 배열에서 키 이름을 바꾸는 또 다른 방법은 PHP에서 foreach 루프를 사용하여 배열을 탐색하는 것입니다. 원본 배열의 각 요소를 새 배열에 복사할 수 있지만 복사할 때 원본 배열의 키 이름을 수정합니다.

샘플 코드:

$arr = ['user_id' => 1, 'user_name' => 'Tom', 'user_age' => 20];

$new_arr = [];

foreach($arr as $key => $value) {
  if($key == 'user_id') {
    $key = 'id';
  }
  $new_arr[$key] = $value;
}

$arr = $new_arr;
로그인 후 복사

위 코드에서는 새 배열 $new_arr을 사용하여 원래 배열의 각 요소를 새 배열에 복사합니다. 복사하는 동안 원본 배열의 키 이름이 "user_id"인 경우 "id"로 바꿉니다.

3. array_reduce 함수 사용

array_reduce 함수는 배열의 모든 요소에 대해 축소 계산을 수행하는 데 사용할 수 있으며 배열의 키 이름을 바꾸는 데에도 사용할 수 있습니다.

샘플 코드:

$arr = ['user_id' => 1, 'user_name' => 'Tom', 'user_age' => 20];

$new_arr = array_reduce(array_keys($arr), function($result, $key) use ($arr) {
  if($key == 'user_id') {
    $key = 'id';
  }
  $result[$key] = $arr[$key];
  return $result;
}, []);

$arr = $new_arr;
로그인 후 복사

위 코드에서는 배열의 키 이름을 array_reduce 함수에 전달하고 키 이름을 대체할 익명 함수를 정의합니다. 함수에서는 먼저 키 이름이 "user_id"인지 확인하고, 그렇다면 "id"로 바꾸고, 그렇지 않으면 원래 키 이름을 사용합니다. 그런 다음 새 키-값 쌍을 반환 값 배열에 추가하고 마지막으로 반환된 배열을 사용하여 원래 배열을 대체합니다.

요약

PHP에는 array_map, foreach, array_reduce와 같은 함수를 사용하는 것을 포함하여 키 이름을 동일한 배열로 바꾸는 방법이 많이 있습니다. 다양한 기능은 다양한 방식으로 사용되며 특정 요구 사항과 시나리오에 따라 선택해야 합니다. 실제 개발에서는 이러한 방법을 유연하게 사용하여 어레이 작업 효율성과 코드 가독성을 향상시켜야 합니다.

위 내용은 PHP 동일한 배열 대체 키 값의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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