현재 위치: > 최신 기사 목록> [php array_values ​​함수는 array_map 함수와 함께 사용됩니다. 일반적인 응용 프로그램 예는 무엇입니까?

[php array_values ​​함수는 array_map 함수와 함께 사용됩니다. 일반적인 응용 프로그램 예는 무엇입니까?

gitbox 2025-06-11

예 1 : 연관 배열의 값을 추출하고 포맷합니다.

개발에서 [ 'name'=> 'tom', 'age'=> 28] 와 같은 연관 배열이 종종 처리됩니다. 우리가 값에만 관심을 갖고 문자열로 균일하게 변환하려는 경우 :

 $data = ['name' => 'Tom', 'age' => 28];

$formatted = array_map('strval', array_values($data));

print_r($formatted);

산출:

 Array
(
    [0] => Tom
    [1] => 28
)

이 시나리오에서는 array_values ​​()가 연결 키를 제거 하고 Array_map ()은 유형 변환을 완료합니다.


예제 2 : 배열 값을 청소하고 인덱스 재 구축

추가 공간과 다른 데이터 형식을 포함하는 사용자 입력에서 다음 배열을 얻는다고 상상해보십시오.

 $input = [
    'first' => ' Alice ',
    'second' => 'BOB',
    'third' => ' charlie '
];

소문자를 통합하고, 공백을 제거하고, 인덱스 어레이를 재구성하려고합니다.

 $clean = array_map('trim', array_map('strtolower', array_values($input)));

print_r($clean);

산출:

 Array
(
    [0] => alice
    [1] => bob
    [2] => charlie
)

두 개의 Array_Map () S 중첩은 각 값을 처리하는 데 사용되며 최종적으로 array_values ​​()로 인덱스를 재구성하며 결과는 간결하고 명확합니다.


예 3 : 객체 속성 또는 배열 키 값의 배치 추출

객체 배열 또는 연관 배열 목록에서 다음 시나리오에서 사용자의 ID를 추출하는 것과 같은 특정 필드를 추출해야합니다.

 $users = [
    ['id' => 101, 'name' => 'Lily'],
    ['id' => 102, 'name' => 'John'],
    ['id' => 103, 'name' => 'Mike']
];

$ids = array_values(array_map(function ($user) {
    return $user['id'];
}, $users));

print_r($ids);

산출:

 Array
(
    [0] => 101
    [1] => 102
    [2] => 103
)

이 구조화 된 데이터에서 array_map ()는 키 값을 추출하고 Array_Values ​​()는 출력 배열의 연속성을 보장하며, 이는 후속 데이터 처리 또는 프론트 엔드 JSON 출력에 매우 적합합니다.


예제 4 : 벌크 구성 URL 경로

때로는 사용자 이름을 기반으로 프로파일 페이지 경로 생성과 같은 특정 데이터 필드를 기반으로 매개 변수로 URL을 생성해야합니다.

 $names = ['alice', 'bob', 'charlie'];

$urls = array_map(function ($name) {
    return 'https://gitbox.net/user/profile/' . urlencode($name);
}, array_values($names));

print_r($urls);

산출:

 Array
(
    [0] => https://gitbox.net/user/profile/alice
    [1] => https://gitbox.net/user/profile/bob
    [2] => https://gitbox.net/user/profile/charlie
)

Array_Map ()은 경로 문자열을 생성하는 데 사용되며, Array_Values ​​() 는 데이터가 필요할 때 연속 인덱스 배열이거나 JSON 응답에 적합하거나 프론트 엔드로 전달되도록합니다.