> 백엔드 개발 > PHP 튜토리얼 > PHP 배열 처리(Array 함수)

PHP 배열 처리(Array 함수)

不言
풀어 주다: 2023-03-23 21:34:02
원래의
8871명이 탐색했습니다.

관련 추천: "PHP ARRAY 배열 함수(특별 주제)"

PHP 배열이란 무엇입니까?

배열은 일련의 데이터를 구성하여 작동 가능한 전체를 구성하는 데이터 모음입니다. PHP의 배열은 다른 고급 언어의 배열보다 복잡하지만 더 유연합니다.

Array 배열은 각 값을 요소라고 하는 변수의 순서가 지정된 집합입니다. 각 요소는 키(아래 첨자라고도 함)라는 특수 식별자로 구별됩니다.

배열의 각 엔터티에는 키와 값이라는 두 가지 항목이 포함되어 있습니다. 해당 배열 요소는 키 값으로 얻을 수 있습니다. 이러한 키는 숫자 키 또는 연관 키일 수 있습니다. 변수가 단일 값을 저장하는 컨테이너라면 배열은 여러 값을 저장하는 컨테이너입니다.

PHP 배열은 다른 고급 언어의 배열보다 더 유연합니다. 숫자를 키로 사용하는 인덱스 배열을 지원할 뿐만 아니라 문자열 또는 문자열과 숫자를 키로 사용하는 연관 배열도 지원합니다. Java 또는 C++와 같은 다른 고급 언어에서는 숫자로 인덱스된 배열만 지원됩니다.

PHP 배열의 구조는 다음과 같습니다.

PHP 배열 처리(Array 함수)

PHP에는 세 가지 배열 유형이 있습니다.

  • 인덱스 배열: 숫자 인덱스가 있는 배열

  • 연관 배열: 지정된 key Array

  • 다차원 배열: 하나 이상의 배열을 포함하는 배열

추천 동영상 튜토리얼:

1. "PHP 함수 배열 배열 함수 동영상 설명"

2. 옥소녀심경버전)

3. "

PHP 문자열 처리(옥소녀심경버전)"

추천 학습 매뉴얼: "

php 완전 자율 학습 매뉴얼"

PHP 배열 사용법

PHP 배열의 정의

[1,  5,  1.1,  'abc'  true,  false] //可以存储任何数据,此时为'默认下标',

[2=>1,  5=>5,  3=>1.1,  7=>'abc'  0=>true]//下标可以任意设定(无需顺序,无需连续)

[2=>1,  5,  1=>1.1,  'abc'  0=>true]//可以加下标,也可以不加(默认下标),下标分别是:2,3,1,4,0

//默认下标规则:前面已经用过的最大数字下标+1

[2=>1,  'dd'=>5,  1=>1.1,  'abc'  0=>true]//混合下标,同样遵循默认下标规则

[-2=>1,  'dd'=>5,  1.1,  'abc'  true]; //负数下标不算在整数下标中,而只当作字符下标

//则最好3项的下标是:0, 1, 2

[2.7=>1,  'dd'=>5,  1=>1.1,  'abc'  0=>true]//浮点数下标为自动转换为整数,且直接抹掉小数

['2.7' =>1,  'dd'=>5,  '11'=>1.1,  'abc'  true]//纯数字字符串下标,当作数字看待,

//则此时下标为:2, 'dd', 11, 12, 13

[2=>1,  'dd'=>5,  true=>1.1,  'abc'  false=>true]//布尔值当下标,则true为1,false为0;

[2=>1,  'dd'=>5,  2=>1.1,  'abc'  true]//如果下标跟前面的重复,则单纯覆盖前面同名下标的值
로그인 후 복사

연관 배열

$array = [
    'name' => 'zhaosi',
    'age' => 20,
    'sex' => '女'
];
로그인 후 복사

다차원 배열


$array = [
    [
        'name' => 'xiaoming',
        'age' => 17,
        'sex' => '男'
    ],
    [
        'name' => 'wanghua',
        'age' => 16,
        'sex' => '女'
    ],
    [
        'name' => 'zhaosi',
        'age' => 20,
        'sex' => '女'
    ],
    [
        'name' => 'zhangsan',
        'age' => 22,
        'sex' => '男'
    ],
    [
        'name' => 'wangli',
        'age' => 12,
        'sex' => '女'
    ],
    [
        'name' => 'zhuhua',
        'age' => 14,
        'sex' => '男'
    ]
];
로그인 후 복사

배열 탐색

$array = [
    [
        'name' => 'xiaoming',
        'age' => 17,
        'sex' => '男'
    ],
    [
        'name' => 'wanghua',
        'age' => 16,
        'sex' => '女'
    ],
    [
        'name' => 'zhaosi',
        'age' => 20,
        'sex' => '女'
    ],
    [
        'name' => 'zhangsan',
        'age' => 22,
        'sex' => '男'
    ],
    [
        'name' => 'wangli',
        'age' => 12,
        'sex' => '女'
    ],
    [
        'name' => 'zhuhua',
        'age' => 14,
        'sex' => '男'
    ]
];



foreach ($array as $key => $value) {
    echo $value['name'];
    echo $value['age'];
    echo $value['sex'];
}
로그인 후 복사

결과 출력


xiaoming
17
男
wanghua
16
女
zhaosi
20
女
zhangsan
22
男
wangli
12
女
zhuhua
14
男
로그인 후 복사

일반적으로 사용되는 PHP 배열 함수

1. count() 함수는 배열의 요소 개수나 객체의 속성 개수를 계산하는 것입니다

int count(mixed var[,int mode])
로그인 후 복사

첫 번째 매개변수는 필수이며, 계산된 배열이나 객체를 전달합니다. 두 번째 매개변수는 선택사항이며 함수의 모드가 다차원 배열의 배열 요소 수를 재귀적으로 계산하는지 여부를 지정합니다. 가능한 값은 0 또는 1입니다. 0은 기본값이며 다차원 배열을 감지하지 않습니다. 1이면 다차원 배열을 감지합니다

예:

$a = array(
    "a",
    "b",
    "c",
    "d"
);
echo count($a); //输出个数4
$b = array(
    "a" => array(
        1,
        2,
        3
    ) ,
    "b" => array(
        4,
        5,
        6
    )
);
echo count($b, 1); //输出 8
echo count($b); //输出 2y([b]=>2 [d]=>4)
로그인 후 복사

2. array_count_values() 함수는 배열에 있는 모든 값의 발생 횟수를 계산하는 데 사용됩니다. 하나의 매개변수

array array_count_values(array input)
로그인 후 복사

매개변수는 배열이 입력되고 배열이 반환됨을 지정합니다. 해당 요소의 키 이름은 원본 배열의 값, 키 값은 해당 값이 원본 배열에 나타나는 횟수입니다.

예:

$array=array(1,"a",1,"b","a");
$newarray=array_count_values($array);
print_r($newarray);//输出array([1]=>2 [a]=>2 [b]=>1)
로그인 후 복사

3. array_unique() 함수는 배열에서 중복된 값을 삭제하고 중복된 값이 없는 새 배열을 반환하는 데 사용됩니다.

array array_unique(array array)
로그인 후 복사

매개변수는 값이 배열을 허용해야 하는 경우입니다. 배열의 여러 요소가 동일하면 첫 번째 요소만 유지되고 다른 요소는 삭제되며 반환된 새 배열의 키 이름은 변경되지 않은 채 유지됩니다. array_unique()는 먼저 값을 문자열로 정렬한 다음 각 값에 대해 처음 발견된 키 이름을 유지한 다음 모든 후속 키 이름을 무시합니다. 예:

$a=array("a"=>1,"b"=>2,"c"=>1);
print_r(array_unique($a));//输出 array([a]=>1 [b]=>2)
로그인 후 복사

4 array_filter() 함수는 콜백 함수를 사용하여 배열의 요소를 필터링하고 그 이후에 사용자 정의 배열을 반환합니다. 함수 필터링

array array_filter(array input [,callback callback])
로그인 후 복사
매개변수: 첫 번째 매개변수는 필터링된 배열의 입력이 필요합니다. 두 번째 매개변수는 선택사항입니다. 필터링이 사용자 정의된 경우 함수가 반환되는 경우입니다. true이면 연산된 배열의 현재 값이 반환된 결과 배열에 포함되고 결과는 새 배열로 구성됩니다. 원래 배열이 연관 배열인 경우 키 이름은 변경되지 않습니다.

예:

function myFun($var) {
    if ($var % 2 == 0) {
        return true;
    }
}
$array = array(
    "a" => 1,
    "b" => 2,
    "c" => 3,
    "d" => 4
);
print_r($array, "myFun"); //输出 array([b]=>2 [d]=>4)
로그인 후 복사

5. array_walk() 함수는 배열의 각 요소에 콜백 함수 처리를 적용합니다. 성공하면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

bool array_walk( array &array,callback funcname [,mixed userdata])
로그인 후 복사
첫 번째 매개 변수는 필수이며 지정된 값이 필요합니다. 입력 콜백 함수에 의해 처리된 배열, 두 번째 매개변수는 사용자 정의 콜백 함수에 전달되며, 이는 첫 번째 매개변수에 전달된 배열을 작동하는 데 사용됩니다

예:

function myFunc1($value, $key) {
    echo "key=$key value=$value";
}
$a = ["a" => "lin1", "b" => "lin2", "c" => "lin3"];
array_walk($a, "myFunc1");
function myFunc2($value, $key, $str) {
    echo "$key $value";
}
array_walk($a, "myFunc2");
function myFunc3($value, $key) {
    $value = "lin.su";
}
array_walk($a, "myFunc3");
print_r($a); //$a 是一个引用数组
로그인 후 복사

6. 여러 배열을 처리하며, 콜백 함수는 주어진 배열의 요소에 작용하고 사용자 정의 함수가 적용된 후 배열을 반환합니다.

array array_map(callback callback,array arr1[,arry ....])
로그인 후 복사
예:
function myFunc($v1, $v2) {
    if ($v1 == $v2) {
        return "same";
    }
    return "different";
}
$a = [1, 2, 3];
$b = [1, 4, 3];
print_r(array_map("myFunc", $a, $b)); //输出 array([0]=>same [1]=>difference [2]=>same)
print_r(array_map(null, $a, $b));
로그인 후 복사

출력:

array(
[0]=>array([0]=>1 [1]=>2 [2]=>3)
[1]=>array([0]=>1 [1]=>2 [2]=>3)
)
로그인 후 복사

PHP 배열 함수

함수 설명
array() 배열을 만듭니다.
array_change_key_case() 배열의 모든 키를 소문자 또는 대문자로 변경하세요.
array_chunk() 배열을 새 배열 청크로 분할합니다.
array_column() 입력 배열의 단일 열 값을 반환합니다.
array_combine() 두 배열을 병합하여 새 배열을 만듭니다.
array_count_values() 는 배열에 있는 모든 값의 발생 횟수를 계산하는 데 사용됩니다.
array_diff() 배열을 비교하고 차이 집합을 반환합니다(키 값만 비교).
array_diff_assoc() 배열을 비교하고 차이 집합을 반환합니다(키 이름과 키 값 비교).
array_diff_key() 배열을 비교하고 차이 집합을 반환합니다(키 이름만 비교).
array_diff_uassoc() 배열을 비교하고 차이 세트를 반환합니다(사용자 정의 키 이름 비교 함수를 사용하여 키 이름과 키 값을 비교합니다).
array_diff_ukey() 배열을 비교하고 차이 세트를 반환합니다(사용자 정의 키 이름 비교 함수를 사용하여 키 이름만 비교합니다).
array_fill() 주어진 키 값으로 배열을 채웁니다.
array_fill_keys() 지정된 키 이름의 지정된 키 값으로 배열을 채웁니다.
array_filter() 콜백 함수를 사용하여 배열의 요소를 필터링합니다.
array_flip() 배열의 키와 값을 교환합니다.
array_intersect() 배열을 비교하고 교차점을 반환합니다(키 값만 비교).
array_intersect_assoc() 배열을 비교하고 교차점을 반환합니다(키 이름과 키 값 비교).
array_intersect_key() 배열을 비교하고 교차점을 반환합니다(키 이름만 비교).
array_intersect_uassoc() 배열을 비교하고 교차점을 반환합니다(키 이름과 키 값을 비교하고, 사용자 정의 키 이름 비교 함수를 사용합니다).
array_intersect_ukey() 배열을 비교하고 교차점을 반환합니다(키 이름만 비교하고 사용자 정의 키 이름 비교 함수 사용).
array_key_exists() 지정된 키 이름이 배열에 존재하는지 확인하세요.
array_keys() 배열의 모든 키 이름을 반환합니다.
array_map() 배열의 각 값을 사용자 정의 함수로 보내고 새 값을 반환합니다.
array_merge() 하나 이상의 배열을 하나의 배열로 병합합니다.
array_merge_recursive() 하나 이상의 배열을 재귀적으로 병합합니다.
array_multisort() 여러 배열 또는 다차원 배열을 정렬합니다.
array_pad() 배열을 지정된 길이만큼 값으로 채웁니다.
array_pop() 배열의 마지막 요소(팝)를 삭제합니다.
array_product() 배열에 있는 모든 값의 곱을 계산합니다.
array_push() 배열 끝에 하나 이상의 요소를 삽입합니다(푸시).
array_rand() 배열에서 하나 이상의 임의의 키를 반환합니다.
array_reduce() 사용자 정의 함수를 사용하여 배열을 문자열로 반환합니다.
array_replace() 첫 번째 배열의 값을 다음 배열의 값으로 바꿉니다.
array_replace_recursive() 첫 번째 배열의 값을 다음 배열의 값으로 재귀적으로 바꿉니다.
array_reverse() 배열을 역순으로 반환합니다.
array_search() 배열에서 주어진 값을 검색하고 키 이름을 반환합니다.
array_shift() 배열의 첫 번째 요소를 삭제하고 삭제된 요소의 값을 반환합니다.
array_slice() 배열에서 선택한 부분을 반환합니다.
array_splice() 배열에서 지정된 요소를 제거하고 교체합니다.
array_sum() 배열에 있는 값의 합계를 반환합니다.
array_udiff() 배열을 비교하고 차이 세트를 반환합니다(사용자 정의 키 비교 함수를 사용하여 값만 비교합니다).
array_udiff_assoc() 배열 및 반환 차이 세트 비교(키와 값 비교, 내장 함수를 사용하여 키 이름 비교, 사용자 정의 함수를 사용하여 키 값 비교).
array_udiff_uassoc() 배열 및 반환 차이 세트를 비교합니다(두 개의 사용자 정의 키 이름 비교 함수를 사용하여 키와 값을 비교합니다).
array_uintersect() 배열을 비교하고 교집합을 반환합니다(사용자 정의 키 비교 함수를 사용하여 값만 비교합니다).
array_uintersect_assoc() 배열을 비교하고 교차점을 반환합니다(키와 값을 비교하고, 내장 함수를 사용하여 키 이름을 비교하고, 사용자 정의 함수를 사용하여 키 값을 비교합니다).
array_uintersect_uassoc() 배열을 비교하고 교집합을 반환합니다(두 개의 사용자 정의 키 비교 함수를 사용하여 키와 값을 비교합니다).
array_unique() 배열에서 중복된 값을 제거합니다.
array_unshift() 배열의 시작 부분에 하나 이상의 요소를 삽입합니다.
array_values() 배열의 모든 값을 반환합니다.
array_walk() 배열의 각 구성원에 사용자 함수를 적용합니다.
array_walk_recursive() 배열의 각 멤버에 사용자 함수를 재귀적으로 적용합니다.
arsort() 연관 배열을 키 값에 따라 내림차순으로 정렬합니다.
asort() 연관 배열을 키 값에 따라 오름차순으로 정렬합니다.
compact() 변수 이름과 해당 값을 포함하는 배열을 만듭니다.
count() 배열의 요소 수를 반환합니다.
current() 배열의 현재 요소를 반환합니다.
each() 배열의 현재 키/값 쌍을 반환합니다.
end() 배열의 내부 포인터가 마지막 요소를 가리킵니다.
extract() 배열의 변수를 현재 기호 테이블로 가져옵니다.
in_array() 지정된 값이 배열에 존재하는지 확인합니다.
key() 연관 배열에서 키 이름을 가져옵니다.
krsort() 키 이름을 기준으로 역순으로 배열을 정렬합니다.
ksort() 키 이름을 기준으로 배열을 정렬합니다.
list() 배열의 값을 일부 변수에 할당합니다.
natcasesort() "자연 정렬" 알고리즘을 사용하여 대소문자를 구분하지 않고 배열을 정렬합니다.
natsort() "자연 정렬" 알고리즘을 사용하여 배열을 정렬합니다.
next() 배열의 내부 포인터를 한 위치 앞으로 이동합니다.
pos() current()의 별칭입니다.
prev() 배열의 내부 포인터를 1비트 되감습니다.
range() 지정된 범위의 셀을 포함하는 배열을 만듭니다.
reset() 은 배열의 내부 포인터를 첫 번째 요소로 설정합니다.
rsort() 배열을 역순으로 정렬합니다.
shuffle() 배열을 섞습니다.
sizeof() count()의 별칭입니다.
sort() 배열을 정렬합니다.
uasort() 사용자 정의 비교 함수를 사용하여 배열의 키 값을 정렬합니다.
uksort() 사용자 정의 비교 기능을 사용하여 배열의 키 이름을 정렬합니다.
usort() 사용자 정의 비교 함수를 사용하여 배열을 정렬합니다.

위 내용은 PHP 배열 처리(Array 함수)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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