> 백엔드 개발 > PHP 문제 > PHP 배열 병합으로 필드 값 추가

PHP 배열 병합으로 필드 값 추가

王林
풀어 주다: 2023-05-05 22:55:06
원래의
684명이 탐색했습니다.

PHP 프로그래밍에서 배열은 일반적으로 사용되는 데이터 유형 중 하나입니다. 배열을 사용하면 데이터를 편리하게 저장하고 관리할 수 있습니다. 일부 실제 프로그래밍에서는 여러 배열을 병합하고 배열의 일부 필드를 추가하거나 수정해야 하는 상황에 직면하게 됩니다. 이 기사에서는 PHP를 사용하여 배열을 병합하고 일부 필드에 값을 추가하는 방법을 소개합니다.

1. 배열 병합

PHP에서는 array_merge() 함수를 사용하여 두 개 이상의 배열을 병합할 수 있습니다. 이 함수의 사용법은 다음과 같습니다.

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
$array3 = array_merge($array1, $array2);
print_r($array3);
로그인 후 복사

실행 결과는 다음과 같습니다.

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
)
로그인 후 복사

결과에서 알 수 있듯이 $array3은 $array1과 $array2를 병합하여 구성됩니다. 그 중 $array1의 값이 먼저 오고 $array2의 값이 마지막에 옵니다. 두 배열의 키 이름이 동일한 경우 후자가 전자를 덮어쓰게 된다는 점에 유의해야 합니다.

2. 배열의 특정 필드에 값 추가

배열 병합 외에도 배열의 특정 값을 수정해야 하는 경우가 많습니다. 이 기사에서 우리가 달성하고자 하는 것은 배열의 특정 필드에 값을 추가하는 것입니다. 예를 들어 학생 배열에 총 성적 필드를 추가합니다. 다음과 같은 두 개의 학생 배열이 있다고 가정합니다.

$student1 = array('name' => '张三', 'score1' => 80, 'score2' => 90);
$student2 = array('name' => '李四', 'score1' => 85, 'score2' => 95);
로그인 후 복사

이제 다음과 같이 총점 필드를 추가하려고 합니다.

$student1['total'] = $student1['score1'] + $student1['score2'];
$student2['total'] = $student2['score1'] + $student2['score2'];
로그인 후 복사

그러면 두 학생 배열에 총점 필드가 추가됩니다. 이제 배열을 탐색하여 결과를 볼 수 있습니다.

$students = array($student1, $student2);
foreach ($students as $student) {
    echo $student['name'] . "的总成绩是:" . $student['total'] . "<br/>";
}
로그인 후 복사

실행 결과는 다음과 같습니다.

张三的总成绩是:170
李四的总成绩是:180
로그인 후 복사

3. 병합된 배열을 결합하고 배열에 필드 값을 추가합니다.

위 두 부분에 대한 지식을 바탕으로 효과: 배열을 병합하고 배열의 일부 필드에 값을 추가하면 달성하고자 하는 것을 얻을 수 있습니다.

두 학급의 다음과 같은 배열의 학생이 있다고 가정합니다.

$class1 = array($student1, $student2);
$class2 = array(
    array('name' => '王五', 'score1' => 90, 'score2' => 95),
    array('name' => '赵六', 'score1' => 85, 'score2' => 80)
);
로그인 후 복사

이제 두 학급의 배열을 병합하고 각 학생에게 총 성적 필드를 추가하려고 합니다. 구현 방법은 다음과 같습니다.

// 合并两个班级的学生数组
$students = array_merge($class1, $class2);

// 遍历数组,给每个学生增加总成绩字段
foreach ($students as &$student) {
    $student['total'] = $student['score1'] + $student['score2'];
}
로그인 후 복사

배열을 순회할 때 참조 및 기호를 사용해야 합니다. 그렇지 않으면 추가된 총점 필드가 배열에 저장되지 않습니다.

이제 전체 배열을 탐색하고 결과를 볼 수 있습니다.

foreach ($students as $student) {
    echo $student['name'] . "的总成绩是:" . $student['total'] . "<br/>";
}
로그인 후 복사

실행 결과는 다음과 같습니다.

张三的总成绩是:170
李四的总成绩是:180
王五的总成绩是:185
赵六的总成绩是:165
로그인 후 복사

이 시점에서 여러 배열을 병합하고 그 안의 일부 필드에 값을 추가하는 기능을 구현했습니다. . 이 방법을 사용하면 대량의 데이터를 쉽게 처리하고 빠른 작업을 수행할 수 있습니다.

위 내용은 PHP 배열 병합으로 필드 값 추가의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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