이 글에서는 특정 참조값을 갖는 PHP 소스코드 21: array_slice 함수에 대해 주로 소개합니다. 이제 필요한 친구들이 참고할 수 있도록 공유하겠습니다.
(PHP 4, PHP 5)
array array_slice (array array, int offset [, int length [, bool presents_keys]] )
array_slice()는 오프셋과 길이로 지정된 배열의 세그먼트를 반환합니다. 매개변수.
오프셋이 음수가 아닌 경우 시퀀스는 배열의 이 오프셋에서 시작됩니다. 오프셋이 음수이면 시퀀스는 배열의 끝에서 이만큼 멀리 시작됩니다.
길이가 주어지고 양수이면 시퀀스에 이만큼의 셀이 있게 됩니다. 길이가 주어지고 음수이면 시퀀스는 배열의 끝에서 이만큼 멀리 종료됩니다. 생략하면 시퀀스가 오프셋에서 시작하여 배열의 끝으로 이동합니다.
이 섹션에서는 프로그램의 구현이 다음과 같이 매우 간단하다는 것을 설명합니다.while (pos < offset + length && ...) { ....... }
여기서 언급한 배열 재설정 키는 배열의 숫자 키를 재설정하는 것을 의미합니다.
PHP 코드는 다음과 같습니다:<?PHP $arr = array(2 => 2, 1 => 1, 's' => 's', '0' => 'ddd'); var_dump(array_slice($arr, 0)); die(); /* 此段程序会输出:array(4) { [0]=> int(2) [1]=> int(1) ["s"]=> string(1) "s" [2]=> string(3) "ddd" } */
<pre line="1" switch (zend_hash_get_current_key_ex(Z_ARRVAL_P(input), &string_key, &string_key_len, &num_key, 0, &hpos)) { case HASH_KEY_IS_STRING: // key为字符串,没有重置数组键的操作 zend_hash_update(Z_ARRVAL_P(return_value), string_key, string_key_len, entry, sizeof(zval *), NULL); break; case HASH_KEY_IS_LONG: // key为数字 if (preserve_keys) { // preserve_keys为true时不重置数字键 zend_hash_index_update(Z_ARRVAL_P(return_value), num_key, entry, sizeof(zval *), NULL); } else { // 默认情况下重置数字键 zend_hash_next_index_insert(Z_ARRVAL_P(return_value), entry, sizeof(zval *), NULL); } break; }
위 내용은 이 기사의 전체 내용입니다. 모든 사람의 학습에 도움이 될 것입니다. 더 많은 관련 콘텐츠를 보려면 PHP 중국어 웹사이트에 주목하세요!
관련 권장 사항:
PHP 소스 코드 20에 대한 간략한 토론: array_flip, array_reverse 함수 정보# 🎜🎜 #
PHP 소스 코드에 대한 간략한 토론 19: array_file, 범위 함수 정보
위 내용은 PHP 소스 코드 21에 대한 간략한 토론: array_slice 함수에 대하여의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!