PHP 연관 배열이 정렬되어 있습니까?
나는 파이썬 배경에서 왔고 비슷한 파이썬 데이터 유형 (사전)은 정렬되지 않은 키 값 쌍 세트입니다.
PHP 연관 배열이 정렬되지 않았는지 궁금합니다. 주문 된 것으로 보입니다.
$test = array(
'test' => 'test',
'bar' => 'bar',
);
var_dump($test);
var_dump(array_slice($test, 0, 1));
테스트는 항상 막대 앞에오고 보시다시피이 배열을 슬라이스 할 수 있습니다. 그래서 이것은 항상 PHP 버전에서 주문이 보장됩니까? 순서는 내가 배열을 선언 한 순서 일 뿐입니 까? 그렇다면 내부적으로 'test'가 배열에 [0]을 배치하도록 가리키는 것이 있습니까? http://php.net/manual/en/language.types.array.php 를 읽었 지만이 문제에 대해 너무 많은 정보를 제공하지는 않습니다. 귀하의 답변에 감사드립니다. Ty
PHP 연관 배열 (뿐만 아니라 숫자 배열) 정렬 및 PHP 같은 배열의 키 순서를 다루는 다양한 기능을 제공 ksort()
, uksort()
및krsort()
또한 PHP를 사용하면 숫자 키가 잘못된 배열을 선언 할 수 있습니다.
$a = array(3 => 'three', 1 => 'one', 2 => 'two');
print_r($a);
Array
(
[3] => three
[1] => one
[2] => two
)
// Sort into numeric order
ksort($a);
print_r($a);
Array
(
[1] => one
[2] => two
[3] => three
)
PHP의 배열 은 실제로 정렬 된 맵 입니다. 맵은 값을 키에 연결하는 유형입니다. 이 유형은 여러 가지 용도에 최적화되어 있습니다. 배열, 목록 (벡터), 해시 테이블 (맵 구현), 사전, 컬렉션, 스택, 대기열 등으로 처리 될 수 있습니다. 배열 값은 다른 배열 일 수 있으므로 트리 및 다차원 배열도 가능합니다.
An array in PHP is actually an ordered map.
그래서 예, 그들은 항상 주문됩니다. 배열은 해시 테이블 로 구현됩니다 .
보내는 사람 PHP 매뉴얼 :
배열 이 정렬됩니다. 다양한 정렬 기능을 사용하여 순서를 변경할 수 있습니다. 자세한 내용은 배열 함수 섹션을 참조하십시오.
나는 그들이 주문되었고 내가 가진 모든 프로젝트에서 일관되게 작동했다는 사실에 의존했습니다.
참고 URL : https://stackoverflow.com/questions/10914730/are-php-associative-arrays-order
'Development Tip' 카테고리의 다른 글
String.replaceAll ()이 Java 8에서 Java 9와 다르게 작동하는 이유는 무엇입니까? (0) | 2020.11.28 |
---|---|
ASP.NET Web Garden-얼마나 많은 작업자 프로세스가 필요합니까? (0) | 2020.11.28 |
함수의 모든 인수를 다른 함수에 전달 (0) | 2020.11.28 |
안드로이드 와이파이를 애드혹 와이파 이에 연결하는 방법? (0) | 2020.11.28 |
Visual Studio에서 DLL의 종속성 복사 (0) | 2020.11.28 |