PHP의 배열

WBOY
풀어 주다: 2016-07-30 13:30:14
원래의
1158명이 탐색했습니다.

개요

PHP의 배열은 실제로 순서가 지정된 맵이고, 맵은 값을 키에 연결하는 유형입니다.

PHP는 실제로 인덱스 배열과 연관 배열을 구별하지 않기 때문에 PHP 배열에는 정수와 문자열 키 이름이 모두 포함될 수 있습니다.

키는 정수 또는 문자열일 수 있습니다
값은 모든 유형의 값이 될 수 있습니다


배열의 정의

두 가지 방법이 있습니다

array() 언어 구조를 사용하여 새 배열을 만들 수 있습니다

<code>array(  key =>  value
     , ...
 )
</code>
로그인 후 복사

5.4부터 array() 대신 []를 사용하여 짧은 배열 정의 구문을 사용할 수 있습니다.

마지막 배열 단위 뒤의 쉼표는 생략 가능합니다. 일반적으로 array(1, 2, ) 대신 array(1, 2)와 같은 단일 행 배열 정의에 사용됩니다. 새 셀을 더 쉽게 추가할 수 있도록 여러 줄 배열 정의에서 마지막 쉼표를 남겨 두는 것이 일반적입니다.


배열의 키

키(key)는 정수 또는 문자열 문자열일 수 있습니다

또한 키는 다음과 같은 강제 변환을 갖습니다.

  • 적법한 정수 값이 포함된 문자열은 정수로 변환됩니다. 예를 들어 키 이름 "8"은 실제로 8로 저장됩니다. 그러나 "08"은 합법적인 십진수 값이 아니기 때문에 캐스팅되지 않습니다.
  • 부동 소수점 숫자도 정수로 변환됩니다. 즉, 소수 부분은 반올림됩니다. 예를 들어 키 이름 8.7은 실제로 8로 저장됩니다.
  • 부울 값도 정수로 변환됩니다. 즉, 키 이름 true는 실제로 1로 저장되고 키 이름 false는 0으로 저장됩니다.
  • Null은 빈 문자열로 변환됩니다. 즉, 키 이름 null은 실제로 ""로 저장됩니다.
  • 배열과 객체는 키로 사용할 수 없습니다. 이렇게 하면 다음과 같은 경고가 발생합니다: 잘못된 오프셋 유형.

배열 정의에서 여러 셀이 동일한 키 이름을 사용하는 경우 마지막 것만 사용하고 이전 것은 덮어씁니다.

주어진 값이 키 이름인 경우 지정되지 않은 경우 현재 가장 큰 정수 인덱스 값이 사용되며 새 키 이름은 이 값에 1을 더한 값이 됩니다. 현재 정수 인덱스가 없으면 키 이름은 0이 됩니다. $foo[bar]가 없는 경우


$foo['bar'] 및 $foo[bar]

상수 bar로 정의되면 PHP는 이를 'bar'로 대체하고 이를 사용합니다.


배열 탐색

foreach 구문 구조는 배열을 탐색하는 간단한 방법을 제공합니다. foreach는 배열과 개체에만 적용할 수 있습니다.

에는 두 가지 구문이 있습니다.

<code>foreach (array_expression as $value)
    statement

foreach (array_expression as $key => $value)
    statement
</code>
로그인 후 복사

unset()

unset() 함수를 사용하면 배열에서 키를 삭제할 수 있습니다. 그러나 배열은 다시 색인화되지 않습니다. 인덱스를 삭제하고 다시 작성해야 하는 경우 array_values() 함수를 사용할 수 있습니다.

<code>$a = array(1 => 'one', 2 => 'two', 3 => 'three');
unset($a[2]);
/* will produce an array that would have been defined as
   $a = array(1 => 'one', 3 => 'three');
   and NOT
   $a = array(1 => 'one', 2 =>'three');
*/

$b = array_values($a);
// Now $b is array(0 => 'one', 1 =>'three')
</code>
로그인 후 복사

배열 기능

http://php.net/manual/zh/ref.array.php


저작권 안내: 이 글은 해당 블로거의 원본 글이므로 블로거의 허락 없이 복제할 수 없습니다.

위 내용은 PHP의 배열을 포함하여 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

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