우리가 두 개의 배열이 있다고 가정합니다. 하나는 학생의 이름이고 다른 하나는 해당 등급이며, "name => grades"의 연관 배열로 결합하려고합니다.
<?php
$names = ['Alice', 'Bob', 'Charlie'];
$scores = [85, 92, 78];
$results = array_combine($names, $scores);
print_r($results);
?>
산출:
Array
(
[Alice] => 85
[Bob] => 92
[Charlie] => 78
)
배열 길이는 동일해야합니다 <br> $ 키 와 $ 값 의 길이가 일치하지 않으면 Array_combine은 False를 반환합니다. 사용하기 전에 두 배열의 길이를 확인하는 것이 좋습니다.
if (count($keys) === count($values)) {
$combined = array_combine($keys, $values);
} else {
echo "배열 길이 불일치,합병 할 수 없습니다";
}
키 어레이의 요소는 고유해야합니다 <br> 연관 배열의 키는 독특해야합니다. 그렇지 않으면 후속 요소가 이전 요소를 덮어 씁니다.
배열이 비어있을 수 없습니다 <br> 빈 배열을 전달하면 함수가 실패하고 False를 반환합니다.
때로는 프론트 엔드에서 전달 된 매개 변수 이름과 값에 따라 쿼리 조건 배열을 빠르게 생성해야 할 수도 있습니다.
<?php
$paramNames = ['name', 'age', 'city'];
$paramValues = ['Alice', 25, 'Beijing'];
$queryConditions = array_combine($paramNames, $paramValues);
print_r($queryConditions);
?>
생성 된 쿼리 조건은 데이터베이스 쿼리 또는 기타 처리에 직접 사용할 수 있습니다.
기존 다차원 배열을 처리 할 때 때때로 특정 차원의 키와 값을 추출한 다음 새로운 배열을 종합하는 것을 원합니다.
<?php
$users = [
['id' => 1, 'name' => 'Alice'],
['id' => 2, 'name' => 'Bob'],
['id' => 3, 'name' => 'Charlie'],
];
$ids = array_column($users, 'id');
$names = array_column($users, 'name');
$userMap = array_combine($ids, $names);
print_r($userMap);
?>
산출:
Array
(
[1] => Alice
[2] => Bob
[3] => Charlie
)
인터페이스에서 두 배열을 얻는다 고 가정 해보십시오. 하나는 매개 변수 이름이고 다른 하나는 해당 매개 변수 값입니다.
<?php
$paramKeys = ['action', 'id', 'format'];
$paramValues = ['getUser', '12345', 'json'];
$queryArray = array_combine($paramKeys, $paramValues);
$url = 'https://gitbox.net/api?' . http_build_query($queryArray);
echo $url;
?>
산출:
https://gitbox.net/api?action=getUser&id=12345&format=json
이를 통해 요청 URL을 동적으로 구성하여 매개 변수 관리를 단순화 할 수 있습니다.