PHP의 배열은 실제로 순서가 지정된 맵입니다. 매핑은 값을 키에 연결하는 유형입니다. 이 유형은 여러 가지 방법으로 최적화되어 있으므로 실제 배열이나 목록(벡터), 해시 테이블(맵 구현), 사전, 세트, 스택, 큐 및 더 많은 가능성으로 처리될 수 있습니다. 배열 요소의 값은 다른 배열일 수도 있습니다. 트리 구조와 다차원 배열도 허용됩니다.
array() 언어 구조를 사용하여 새로운 배열을 만들 수 있습니다. 쉼표로 구분된 key => value 쌍을 원하는 만큼 허용합니다.
키는 정수 또는 문자열일 수 있습니다. 키가 정수의 표준 표현인 경우 정수로 해석됩니다(예: "8"는 8으로 해석됩니다. "08"은 "08"으로 해석됩니다. 키의 부동 소수점 숫자는 정수로 반올림됩니다. PHP에서 인덱스 배열은 연관된 배열과 동일하며 둘 다 정수 및 를 포함할 수 있습니다. 문자열 .
값은 모든 PHP 유형이 될 수 있습니다.
주어진 값에 키가 지정되지 않은 경우 현재 가장 큰 정수 인덱스 값이 사용되며 새 키 이름은 해당 값에 1을 더한 값이 됩니다. 지정된 키 이름에 이미 값이 있으면 해당 값을 덮어씁니다.
TRUE
을 키 이름으로 사용하면 정수1가 됩니다. FALSE
를 키 이름으로 사용하면 정수0가 됩니다. NULL을 키 이름으로 사용하는 것은 빈 문자열을 사용하는 것과 동일합니다. 빈 문자열을 키로 사용하면 빈 문자열을 키로 사용하여 값이 생성(또는 덮어쓰기)됩니다. 이는 빈 대괄호를 사용하는 것과 다릅니다.
배열과 객체는 키로 사용할 수 없습니다. 그렇게 하면 잘못된 오프셋 유형이라는 경고가 표시됩니다.
$arr이 아직 존재하지 않으면 새로 생성됩니다. 이는 배열을 정의하는 또 다른 방법이기도 합니다. 값을 변경하려면 새 값을 할당하면 됩니다. 키/값 쌍을 삭제하려면 unset()을 사용하세요.
참고: 대괄호가 제공되었지만 키 이름이 지정되지 않은 경우 현재 최대 정수 인덱스 값이 사용되며 새 키 이름은 값 1이 됩니다. 현재 정수 인덱스가 없으면 키 이름은 0이 됩니다. 지정된 키 이름에 이미 값이 있으면 해당 값을 덮어씁니다.
여기에 사용된 최대 정수 키 이름 이 현재 배열에 반드시 일 필요는 없습니다. 배열이 마지막으로 다시 인덱싱된 이후에 존재했기만 하면 됩니다.
은 문자열로 표현되는 배열 인덱스 주위에 항상 인용되어야 합니다. 예를 들어 $foo[bar] 대신 $foo['bar']를 사용하세요. 그런데 왜 $foo[bar]가 틀렸나요?
이 코드에는 문자열('bar' - 따옴표 참고) 대신 정의되지 않은 상수(bar)가 있고 PHP가 나중에 이 상수를 정의할 수 있기 때문입니다. 불행히도 귀하의 코드에는 동일합니다. 이름. 이는 PHP가 자동으로 기본 문자열(따옴표가 없고 알려진 기호에 해당하지 않는 문자열)을 값이 기본 문자열인 일반 문자열로 변환하기 때문에 작동합니다. 예를 들어 bar
으로 정의된 상수가 없으면 PHP는 이를 'bar'로 바꿔서 사용합니다.
위 내용은 JavaScript 데이터 유형을 소개합니다. PHP 섹션 2: 데이터 유형 배열에는 JavaScript 데이터 유형에 대한 내용이 포함되어 있어 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.