PHP 배열 사용법 및 운용 요약

WBOY
풀어 주다: 2016-08-08 09:24:30
원래의
746명이 탐색했습니다.

PHP 데이터 애플리케이션에서 배열은 가장 중요한 메소드라고 할 수 있습니다. PHP에는 많은 배열 함수가 있습니다. 나중에 참조할 수 있도록 기억해두기 위한 몇 가지 요약은 다음과 같습니다.

1. 배열 정의
배열 정의의 활용 array() 메소드에서 정의하면 빈 배열을 정의할 수 있습니다:
$number = array(1,3,5,7,9);
//빈 배열 정의
$result = array(); =array("red","blue","green");
//맞춤 키 값
$언어 = (1=>"영어",3=>"중국어",5=>"프랑스어")
//2차원 배열 정의
$two = array(
"color"=>array("red","blue"), //쉼표로 끝남
"week"=>array("Monday","Friday") //마지막 문장에는 구두점이 없습니다
);
?>

2. 배열

컴팩트()를 만듭니다.
compact() 함수 - 하나 이상의 변수(배열 포함)를 배열로 변환합니다. array Compact (mixed $varname [, 혼합 $... ] ).
$number = "1,3,5,7,9";
$string = "저는 PHPer입니다"
$array = array("그리고","당신은?");
$newArray = Compact("숫자","문자열","배열");
print_r($newArray)
?>
compact() 함수는 물론 배열 변수를 포함하여 두 개 이상의 변수를 배열로 변환하는 데 사용됩니다. 매개변수는 $로 된 전체 이름이 아닌 변수의 이름입니다. 반대 함수는 extract()입니다. 이름에서 알 수 있듯이 키 값을 문자열 이름으로, 배열 값을 문자열 값으로 사용하여 배열을 단일 문자열로 변환합니다.
실행 결과:

배열(

[숫자] => 1,3,5,7,9
[string] => 저는 PHPer입니다
[array] => 배열( [0] => 그리고 [1] => 당신은? )
)
array_combine()
array_combine() - 두 개의 배열을 하나의 배열로 재구성합니다. 하나는 키 값으로, 다른 하나는 값으로 사용합니다. $keys , 배열 $values ​​​​)
$number = array("1","3","5","7","9")
$array = array("나","Am","A","PHP","er" );
$newArray = array_combine($number,$array)
print_r($newArray);
?>
array_combine 함수에 대해서는 많이 말하지 않겠습니다. 읽어보시면 다들 이해하실 겁니다.
실행 결과:
배열( [1] => I [3] => Am [5] => PHP [9] =>
range() 함수 - 지정된 범위 내에서 배열을 생성합니다:
$array1 = range(0,100,10);//0은 시작 값, 100은 종료 값, 10은 단계 값입니다(기본 단계 값은 1입니다).
print_r($array1);
echo"
";
$array2 = range("A","Z")
print_r($array2);
echo "
";
$array3 = range("z","a")
print_r($array3);
?>
array_fill()
array_fill() 함수 - 배열 채우기 함수:
$array = range(1,10);
$fillarray = 범위("a","d")
$arrayFilled = array_fill(0,5,$fillarray);//$fillarray는 "test"
echo와 같은 문자열일 수 있습니다. "

"; <br />print_r($arrayFilled) <br />echo "<br />$keys =
array("string","2",9,"SDK","PK") <br />$array2 =
array_fill_keys($keys,"testing"); <br />echo "<pre class="brush:php;toolbar:false">" <br>print_r ($array2);
<br>echo "
";
?>
실행 결과:
배열
(
[0] => 배열
(
[0] => a
[1] => b
[2] => c
[3] => d
)

[1] => 배열

(

[0] =>
[1] =>b
[2] =>c
[3] =>d
)

[2] => 배열

(

[0] => a
[1] =>b
[2] =>c
[3] =>d
)

[3] => 배열

(

[0] =>
[1] =>b
[2] =>c
[3] =>d
)

[4] => 배열

(

[0] => a
[1] =>b
[2] =>c
[3] =>d
)

)

배열

(
[string] => 테스트
[2] => 테스트
[9] => 테스트
[SDK] => 테스트
[PK] => 테스트
)

3. 배열 순회

foreach 순회

foreach ($value로서의 배열_표현식){}
foreach($key로서의 배열_표현식 => $값){}

$speed = array(50,120,180,240,380)
foreach($speed as $keys=>$values){
echo $keys."=>".$values."
"
}
?>실행 결과:
0=>50
1=>120
2=>180
3=>240
4=>380
while 루프 순회
While 루프 순회는 일반적으로 목록 함수와 결합됩니다. 다음은 예제입니다.
$staff = array(
array("이름", "성별", "나이"),
array("장샤오", "남성", 24),
array("샤오왕", "여성", 25 ),
array("샤오 리","남성",23)
)
echo "

";
while(list($keys,$value) = 각($staff)){
list($name,$sex,$age) = $값
에코; "";
}
echo "
$name$sex$age
"
?>
루프 순회
$speed = 범위(0,220,20);
for($i =0;$iecho $speed[$i]." ";
}
?>
실행 결과:
0 20 40 60 80 100 120 140 160 180 200 220
4. 배열 포인터 작업
관련 기능에는 재설정, 이전, 종료, 다음, 현재 및 각이 포함됩니다.
예 1: 다음 및 이전
$speed = 범위(0,220,20)
echo current($speed);//현재 위치의 값을 출력합니다(배열의 시작 부분)
$i = rand(1,11)
while($i--);
next($speed);//현재 위치에서 한 위치 뒤로 포인터를 이동합니다.
}
echo current($speed);//현재 위치의 값을 출력합니다.
echo "
";
echo prev($speed);//이전 위치 배열 값 출력
echo "
";
echo Reset($speed);//배열의 포인터를 재설정하고 포인터를 시작 위치로 가리킵니다.
echo "
";
echo end($speed);//마지막 위치의 배열 값을 출력
echo "
"
?>실행 결과:
0220
200
0
220
예 2: 각 함수 포인터 연산
$speed = range(0,200,40);
echo "각각 포인터를 아래로 이동합니다.
echo "0단 기어의 속도는".current(each($speed))."
"
echo입니다. "1단 기어의 속도는".current(each($speed))."
"; "2단 기어의 속도는".current(each($speed))."
"; "3단 기어의 속도는".current(each($speed))."
"; "4단 기어의 속도는".current(each($speed))."
"; "5단 기어의 속도는".current(each($speed))."
"; "각 함수를 사용하여 배열 포인터를 이동하고 배열 순회를 수행합니다
"
reset($speed);//여기서는 배열 포인터가 배열의 시작 부분을 가리킵니다.
while(list($key,$value)=각($speed)){
echo $key."=>".$value."
";
}
?>
동작 결과:
각각 포인터가 아래로 이동하는 것을 깨닫습니다.
0단 기어의 속도는 0
1단 기어의 속도는 40입니다.
2단 속도는 80
3단 속도는 120
4단 속도는 160
5단 속도는 200
각 함수를 사용하여 배열 포인터를 이동하고 배열 순회를 수행합니다.
0=>0
1=>40
2=>80
3=>120
4=>160
5=>200
5. 배열 추가 및 삭제 작업

배열 구성원 추가
예 1: $num[] = 값은 배열의 끝에 직접 할당되고 추가됩니다:
[code]$num = array(1=>80,2=>120,3=>160);
echo "배열 멤버를 추가하려면 표현식을 사용하세요
";
$num[]=240;

print_r($num)

?>

실행 결과:
식을 사용하여 배열 멤버 추가
Array( [0] => 80 [1] => 120 [2] => 160 [3] => 240
예 2: array_pad 함수, 배열의 시작과 끝을 선택적으로 추가

$num = array(1=>80,2=>120,3=>160)

$num = array_pad($num,4,200)
echo "array_pad 함수를 사용하여 배열 끝에 멤버를 추가하세요
"
print_r($num)
echo "
array_pad는 배열의 헤드를 채울 수도 있습니다
";

$num = array_pad($num,-8,40);

print_r($num)
?>

실행 결과:
array_pad 함수를 사용하여 배열 끝에 멤버를 추가합니다.
Array( [0] => 80 [1] => 120 [2] => 160 [3] => 200 )
array_pad는 배열의 선두도 채울 수 있습니다.
배열([0] => 40 [1] => 40 [2] => 40 [3] => 40 [4] => 80 [5] => 120 [6] => 160 [7] => 200 )
예제 3: 푸시 작업 추가(array_push):

$num = array(1=>80,2=>120,3=>160);
array_push($num,200,240,280);//배열 끝에 직접 추가할 수 있습니다.
print_r($num);
?>

실행 결과:
배열( [1] => 80 [2] => 120 [3] => 160 [4] => 200 [5] => 240 [6] => 280
예 4: array_unshift()는 처음에 배열 멤버를 추가합니다

$num = array(1=>80,2=>120,3=>160);
array_unshift($num,0,40);//배열 끝에 직접 추가할 수 있습니다.
print_r($num);
?>

실행 결과:
배열( [0] => 0 [1] => 40 [2] => 80 [3] => 120 [4] => 160 )
참고: array_unshift() 함수를 사용한 후에는 배열의 키 값이 0부터 시작됩니다!
배열 멤버 삭제
예 1: unset() 명령은 배열 멤버 또는 배열을 삭제합니다.
코드 복사 코드는 다음과 같습니다.$num = array_fill(0,5,rand(1,10));
print_r($num)
echo "
";
unset($num[4]);
print_r($num)
echo "
"
unset($num);
if(is_array){
echo "설정 해제 명령은 전체 배열을 삭제할 수 없습니다."
}else{
echo "설정 해제 명령은 배열을 삭제할 수 있습니다."
}
?>

실행 결과: (실행 오류 및 설명 배열도 삭제되어 더 이상 존재하지 않습니다.)
Array( [0] => 9 [1] => 9 [2] => 9 [3] => 9 [4] => 9 )
배열 ( [0] => 9 [1] => 9 [2] => 9 [3] => 9 )

주의사항: 정의되지 않은 상수 is_array 사용 - 21번째 줄의 H:wampwwwtestingeditorplustest.php에서 'is_array'로 가정합니다.
unset 명령은 전체 배열을 삭제할 수 없습니다.
예 2: array_splice() 함수는 배열 멤버를 삭제합니다.
$a=array("빨간색", "녹색", "파란색", "노란색")
count ($a);
array_splice($a,1,1); //두 번째 요소 삭제
count ($a) //3개 가져오기
echo $a[2]; //노란색 가져오기
echo $a[1] //파란색 가져오기
?>

예 3: array_unique는 배열에서 중복된 값을 삭제합니다.

$a=array("빨간색", "녹색", "파란색", "노란색", "파란색", "녹색")
$result = array_unique($a)
print_r($result);
?>
실행 결과:
배열([0] => 빨간색 [1] => 녹색 [2] => 파란색 [3] => 노란색 )
예 4: array_merge, array_merge_recursive 병합 배열
$array1 = array("r"=>"빨간색",1,2,3,4)
$array2 = array("b"=>"파란색",4=>5,6,7,8,9)
$array3 = array("r"=>"읽기",4=>10,2=>11)
$array4 = 배열(
배열(4=>10),
배열(7=>13)
)
$array5 = 배열(
배열(4=>11),
배열(6=>12)
)
$result = array_merge($array1,$array2,$array3,$array4,$array5)
echo "

";
<br>print_r($result); <br>echo "
"
$result = array_merge_recursive($array1,$array2,$array3,$array4,$array5)
echo "
"; <br>print_r ($result) <br>echo "
"?>
배열
(
[r] => 읽기
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[b] => 파란색
[4] => 5
[5] => 6
[6] => 7
[7] => 8
[8] => 9
[9] =>
[11] => 배열
(
[4] => 10
)

[12] => 배열

(

[7] => 13
)

[13] => 배열

(

[4] => 11
)

[14] => 배열

(

[6] => 12
)

)

배열

(
[r] => 배열
(
[0] => 빨간색
[1] => 읽기
)

[0] => 1

[1] => 2

[2] =>
[3] => 4
[b] => 파란색
[4] => 5
[5] => 6
[6] => 7
[7] => 8
[8] => 9
[9] => 10
[10] => 11
[11] => 배열
(
[4] => 10
)

[12] => 배열

(

[7] => 13
)

[13] => 배열

(

[4] => 11
)

[14] => 배열

(

[6] => 12
)

)

참고: 1. array_merge의 키 이름이 숫자인 경우 동일한 문자열 키 이름이 발견되면 인덱스가 다시 설정되고 나중 키 이름이 이전 키 이름을 덮어씁니다. 2. array_merge_recursive 함수의 기능은 동일한 문자열의 키 이름 단위를 배열로 통합하는 것입니다.

6. 배열 키 및 값 작업
예 1: in_array()는 배열에 특정 값이 존재하는지 감지합니다

$array = range(0,9);

if(in_array(9,$array)){
echo "배열에 존재함"
}
?> 실행 결과: 배열에 존재함


예 2: key()는 배열의 현재 키 이름을 가져옵니다.

$array = 범위(0,9)
$num = rand(0,8);
while($num--)
next($array)
$key = key($array)
echo $key;
?>
이 예제의 결과는 동적 결과이고 범위는 (0-8)이며 결과 데모가 수행되지 않습니다.


예 3: list() 함수는 배열의 값을 지정된 변수에 할당합니다.
array("샤오 리","남성",23)
)
echo "

";
while(list($keys,$value) = 각($staff)){
list($name,$sex,$age) = $값
에코; "";
}
에코 ""
?>

예 4: array_flip()은 배열의 키와 값을 교환합니다.

$배열 = array("빨간색","파란색","노란색","검은색")
print_r($array)
echo "
";
$array = array_flip($array);
print_r($array);
?>

실행 결과:

배열([0] => 빨간색 [1] => 파란색 [2] => 노란색 [3] => 검정색 )
배열( [빨간색] => 0 [파란색] => 1 [노란색] => 2 [검정색] => 3 )

$배열 = array("빨간색","파란색","노란색","검은색")
$result = array_keys($array);
print_r($result)
echo "
"
$result = array_values($array);
print_r($result)
?>

실행 결과:

배열( [0] => 0 [1] => 1 [2] => 2 [3] => 3 )
배열 ( [0] => 빨간색 [1] => 파란색 [2] => 노란색 [3] => 검정 )
예 6: array_search() 검색 값:

$배열 = array("빨간색","파란색","노란색","검은색");
$result = array_search("빨간색",$array);
if(($result === NULL)){
echo "빨간색 값이 없습니다."
}else{
echo "빨간색 값이 있습니다." $result";
}
?>
결과: 값 0이 존재합니다.

array_search() 함수가 반환하는 값은 false, 0 또는 NULL일 수 있으므로 판단 시 "==="를 사용하는 데 주의하세요.
7.
예 1: sort(), rsort()/asort(), arsort()를 사용하여 배열 정렬:

$array = array("b","c","d","a");
sort($array);//낮은 순서로 정렬
print_r($array)
echo "
";
rsort($array);//역 정렬
print_r($array)
?>

결과:

배열([0] => a [1] => b [2] => c [3] => d )
배열 ( [0] => d [1] => c [2] => b [3] => a)
sort() 및 rsort() 함수는 배열을 낮은 것부터 높은 것 순으로 정렬하며 반환 결과는 bool 값입니다.
asort() 및 arsort() 함수는 키 값의 정렬을 유지하며, 정렬 후 키 값은 다시 색인화되지 않습니다.
예 2: 배열 순서를 방해하는 경우 - shuffle() 함수:

$array = array("a","b","c","d");
shuffle($array);//낮은 순서로 정렬
print_r($array)
?>
결과는 동적 결과입니다.

Array ( [0] => c [1] => a [2] => d [3] => b )
셔플 결과는 약간 무작위이며 새로 고칠 때마다 다릅니다.
예 3: array_reverse() 배열 역방향:

$array = array("d","b","a","c");
$array = array_reverse($array);//낮은 것부터 높은 것 순으로 정렬
print_r($array);
?>
실행 결과:

배열( [0] => c [1] => a [2] => b [3] => d )
예 4: 자연 정렬 알고리즘 - natsort() 및 natcasesort();

$배열 = array("sort2","Sort5","sort1","sort4");
natsort($array);//낮은 순서로 정렬
print_r($array)
echo "
"
natcasesort($array);
print_r($array)
?>

결과:

배열( [1] => Sort5 [2] => sort1 [0] => sort2 [3] => sort4 )
배열( [2] => sort1 [0] => sort2 [3] => 정렬4 [1] => 정렬5 )
natsort() 및 natcasesort()는 숫자를 사용하는 일반적인 정렬 알고리즘인 배열에 대한 자연 정렬을 수행합니다. natcasesort는 대소문자를 무시합니다.
예 5: 키 값으로 배열 정렬 ksort():

$배열 = array(1=>"sort2",4=>"정렬5",2=>"정렬1",3=>"정렬4");
ksort($array);//낮은 순서로 정렬
print_r($array)
?>
결과:

배열( [1] => sort2 [2] => sort1 [3] => sort4 [4] => Sort5 )
참고: ksort() 함수는 다시 색인을 생성합니다.
8. 배열의 다른 용도

cout($array) -------- 배열의 셀 수를 계산합니다.
 array_diff($array1,$array2)----------배열 간의 차이를 계산하고 첫 번째 배열에는 있지만 두 번째 배열에는 없는 내용을 반환합니다.
 array_diff_assoc($array1,$array2)---------키 값도 비교한다는 점을 제외하면 array_diff()와 동일합니다.
 array_diff_key($array1,$array2)------------키 값 비교
array_product($array)------------배열에 있는 모든 숫자의 곱을 반환합니다.
array_sum($array)---------------모든 값의 합계
 array_rand($array,$n)------------$array 배열에서 $n 값을 꺼내서 배열을 반환합니다.
 array_intersect($array1,$array2)---두 배열의 교집합을 구합니다.
array_intersect_assoc($array1,$array2)---------------in array_intersect 다음을 기준으로 한 키-값 비교
array_intersect_key($array1,$array2)----두 배열 키 값의 교집합 비교 ​​

위 내용은 관련 내용을 포함하여 PHP 배열의 기술과 작동 요약을 소개하고 있으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!
$name$sex$age