PHP에서 array_combine 함수는 두 배열을 연관 배열로 결합하는 데 사용됩니다. 첫 번째 배열 인 첫 번째 배열, 두 번째 배열은 값으로, 새로운 연관 배열을 반환합니다. 두 배열의 요소 수가 일치하지 않으면 Array_combine이 False를 반환하므로 사용하면 두 배열의 요소 수가 동일해야합니다.
array_combine(array $keys, array $values): array|false
$ 키 : 키가 포함 된 배열.
$ 값 : 값이 포함 된 배열.
반환 값 : 병합 된 연관 배열을 반환하고 실패하면 False를 반환합니다.
숫자를 포함하는 하나는 키로, 다른 하나는 문자열을 값으로 포함한다고 가정하면 Array_combine 함수를 사용하여 연관 배열로 병합 할 수 있습니다.
<?php
$keys = [1, 2, 3];
$values = ['apple', 'banana', 'cherry'];
$combined = array_combine($keys, $values);
print_r($combined);
?>
산출:
Array
(
[1] => apple
[2] => banana
[3] => cherry
)
두 배열의 길이가 array_combine 으로 전달 된 경우, 함수는 False를 반환하고 조건부 판단을 통해이 상황을 처리 할 수 있습니다.
<?php
$keys = ['a', 'b', 'c'];
$values = [1, 2]; // 하나의 값이 누락되었습니다
$combined = array_combine($keys, $values);
if ($combined === false) {
echo "배열 길이 불일치!";
} else {
print_r($combined);
}
?>
산출:
배열 길이 불일치!
실제 개발에서는 특정 규칙에 따라 연관 배열을 동적으로 생성해야 할 수도 있습니다. 예를 들어, URL 세트의 도메인 이름을 m66.net 으로 바꾸려면 array_combine을 통해 달성 할 수 있습니다. 특정 예는 다음과 같습니다.
<?php
$urls = ['https://www.example1.com/page1', 'https://www.example2.com/page2', 'https://www.example3.com/page3'];
$new_urls = [];
foreach ($urls as $url) {
// 사용 parse_url 얻다 URL 도메인 이름은
$parsed_url = parse_url($url);
$new_url = str_replace($parsed_url['host'], 'm66.net', $url);
$new_urls[] = $new_url;
}
// 사용 array_combine 늙었다 URL 세탁 URL 연결하십시오
$combined_urls = array_combine($urls, $new_urls);
print_r($combined_urls);
?>
산출:
Array
(
[https://www.example1.com/page1] => https://m66.net/page1
[https://www.example2.com/page2] => https://m66.net/page2
[https://www.example3.com/page3] => https://m66.net/page3
)
이 예에서는 먼저 URL의 도메인 이름 부분을 교체 한 다음 Array_combine을 사용하여 원래 URL을 값으로 새로 가져 오는 원래 URL을 사용하여 연관 배열을 만듭니다.
Array_combine 함수는 두 배열을 연관 배열로 쉽게 결합 할 수있는 매우 실용적인 도구입니다. 사용량은 매우 간단하지만 전달 된 배열의 길이가 일관되는지 여부에주의를 기울여야합니다. 배열에서 도메인 이름을 바꾸는 것과 같이 더 복잡한 작업이 필요한 경우 먼저 다른 방법을 통해 데이터를 처리 한 다음 Array_combine을 결합하여 최종 연관 배열을 생성 할 수 있습니다.