정렬
어레이는 여러 가지 유형의 데이터를 저장할 수 있으며 복합 데이터 유형입니다.
array()를 사용하여 배열을 초기화하고, 쉼표를 사용하여 각 배열 요소를 구분할 수 있습니다.
PHP5.4 버전 이후에는 배열 초기화가 더 간결해지고 대괄호 [] 에서 초기화
에 사용할 수 있습니다. 간단한 배열을 만들어 보겠습니다.
<?php header("Content-type:text/html;charset=utf-8"); //设置编码 $array=array(100,1.34,true,"PHP中文网",); echo '<pre>'; var_dump($array); echo '<pre/>'; ?>
위의 예에서 우리는 예치한 것을 발견했습니다. :
1. 정수
2. 부동소수점
3. 부울
4.문자열
참고: 위 예에서 echo pre 태그의 주요 목적은 그대로 출력하는 것입니다. 형식이 더 명확하게 표시됩니다.
인덱스 배열 선언을 완료했습니다. 소위 인덱스 배열: 아래 첨자가 모두 정수인 배열입니다.
팁
인덱스 배열의 첨자는 0부터 시작해야 합니다. 시작?
답변: 이 질문은 실제로 사실이 아닙니다. 인덱스 배열이 반드시 0부터 시작하는 것은 아닙니다. 어떻게 0부터 시작할 수 없나요? 답변: 위에서 배운 지식 중 일부를 활용해야 합니다. 키-값 통신원입니다. 다음과 같습니다
<?php header("Content-type:text/html;charset=utf-8"); //设置编码 $kele = array(5=>'只有不断努力才能博得未来',10 => 'php.cn', 'PHP中文网' ,'好好学习哦', 19 => '去PHP中文网学习PHP'); //打印显示$kele echo '<pre>'; var_dump($kele); echo '</pre>'; ?>위의 예에서 볼 수 있듯이 인덱스 배열 첨자는 5부터 시작합니다규칙을 요약해 보겠습니다.
- 인덱스 배열은 아래 첨자를 강제로 선언하지 않으며 아래 첨자는 0부터 시작합니다. (첫 번째 배열의 값: 지속적인 노력만이 미래를 이길 수 있습니다. 이 값의 첨자는 0입니다.)
2. 내가 첨자를 지정한 경우 그의 첨자는 내가 지정한 값이 됩니다. 예를 들어 아래 첨자 5, 10, 19는 모두 제가 지정한 값입니다.
3. 특정 값(예: php.cn)에 강제로 아래 첨자를 지정하는 경우(아래 첨자는 10임) 아래 첨자가 지정되지 않은 경우 그 뒤에 추가되는 값(PHP Academy)입니다. 해당 첨자는
정기적으로 최대값 +1까지 증가합니다.
연관 배열
인덱스 배열을 적절하게 변경하세요. 연관 배열 형태가 나타납니다. 배열에 문자열 배열이 있는 한 이는 연관 배열입니다.
그럼 연관배열을 선언해보겠습니다. 이는 인덱스 배열 선언과 동일한 방식으로 수행됩니다. 그러나 차이점은 문자열의 첨자를 지정해야 하고 키-값 대응을 사용해야 한다는 것입니다.
예
<?php $arr=[ //用[]创建数组 'name'=>'Tom', 'age'=>'18', 'gender'=>'male' ]; echo "<pre>"; var_dump($arr) ; echo"</pre>" ?>
실험을 통해 알 수 있음:
1 . 연관 배열이 키 이름 => 값
이라고 선언 2. 연관 배열은 인덱스 배열
의 요소를 가질 수 있으므로 가장 일반적으로 사용되는 유형입니다. 특정 1차원 배열의 수를 계산합니다. 실제로 이전에 배운 수학 함수 중 하나인 count()를 사용할 수 있습니다.
count($variable) 함수는 배열의 길이(요소의 개수 <를 반환하는 데 사용됩니다. 🎜>):
인스턴스
<?php $name=Array('tom','andy','jack'); echo count($name); ?>
for 루프를 사용하여 인덱스 배열을 순회합니다.
Instance
<?php $arr=Array('tom','andy','jack'); $arrlength=count($arr); for($x=0;$x<$arrlength;$x++){ echo $arr[$x]; echo "<br/>"; } ?>
위의 예를 통해 배열을 반복합니다.
아래 첨자는 0부터 시작하므로 $i=0으로 정의합니다. $i가 반복될 때마다 1씩 증가하도록 하되, 배열 첨자의 최대값이 2이기 때문에 3보다 작아야 합니다.
그럼 질문은
연관 배열은 어떻습니까? 인덱스 배열의 첨자가 연속적이지 않으면 어떻게 되나요? 아래에서 배운 지식을 활용하겠습니다.foreach의 기본 구문
배열을 반복하는 데 특별히 사용되는 부울 루프가 있습니다. 이 루프의 기본 구문은 foreach
foreach( [키 변수 =>] 값 변수 )로 루프할 배열 변수입니다.{
//루프 내용
}
이것은 고정된 사용법입니다. 루프할 배열을 넣습니다.
은 고정 키워드입니다.
뒤의 키 변수는 반복될 때마다 변수를 정의합니다. 뒤의 값 변수가 필요합니다. 반복될 때마다 값은 value 변수에 배치됩니다. 이 구문에 대한 이해를 돕기 위해 코드를 예로 들어 보겠습니다.Instance
?php $arr=[ 'name'=>'Tom', 'age'=>'18', 'gender'=>'male' ]; foreach($arr as $key=>$value){ echo $key.": ".$value."<br />"; }; ?>
위의 실행 결과를 통해 다음과 같은 결과를 얻습니다.
1 . 루프할 때마다 $key 변수에 아래 첨자를 할당하고 $value2 변수에 값 변수를 할당합니다. 끝까지 읽고 읽을 수 있는 배열 요소가 없음을 확인한 후 루프는 데이터 탐색을 중지합니다. 참고: $key 및 $value는 변수 이름일 필요는 없습니다. $kai => $wen과 같이 다른 이름을 지정할 수도 있습니다. 키 할당이 어떤 변수에 할당되어 있는지, 값이 할당된 다른 변수는 무엇인지 알아야 합니다. 다음 예와 같이 foreach를 통해 연속 인덱스 배열을 순회합니다.<?php header("Content-type:text/html;charset=utf-8"); //设置编码 $data = array( 0 => '中国', 100 => '美国', 20 => '韩国', 300 => '德国', ); foreach($data as $k => $v){ echo $k . '------' . $v .'<br />'; } ?>foreach 결과를 기반으로 추론한 결과는 방금 수행한 연관 배열의 결과와 같습니다. 차이점은 불연속적인 인덱스 배열입니다. 배열의 요소를 읽을 때마다 현재 루프의 첨자가 변수 $k에 할당되고 값이 변수 $v에 할당됩니다. 읽을 때마다 키와 값을 입력하여 표시합니다. 루프는 한 번에 한 인덱스씩 뒤로 이동합니다. 끝까지 읽고 실행을 종료합니다.
다차원 배열
PHP 배열 참조 설명서 전체
배열 기능에 대한 전체 참조 설명서를 보려면 PHP 배열 참조 설명서를 방문하세요. 이 참조 매뉴얼에는 각 기능에 대한 간략한 설명과 사용 예가 포함되어 있습니다.