<span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_fill</span></span><span>(</span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-string">'A'</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$result</span></span><span>);
</span></span>출력 결과 :
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[</span><span><span class="hljs-number">0</span></span><span>] => A
[</span><span><span class="hljs-number">1</span></span><span>] => A
[</span><span><span class="hljs-number">2</span></span><span>] => A
)
</span></span>이는 인덱스 0에서 시작하여 3 개의 요소가 채워진 기대치와 일치합니다.
$ start_index가 음수 인 경우, PHP는 오류를 던지지 않지만 키 이름으로 음수로 배열을 직접 채우는 것입니다.
예:
<span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_fill</span></span><span>(-</span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-string">'B'</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$result</span></span><span>);
</span></span>출력 결과 :
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[-</span><span><span class="hljs-number">3</span></span><span>] => B
[-</span><span><span class="hljs-number">2</span></span><span>] => B
[-</span><span><span class="hljs-number">1</span></span><span>] => B
)
</span></span> 보시다시피, 배열은 -3에서 시작하여 차례로 -1로 채워집니다.
이는 PHP에서 음수 지수가 허용되며 일반 정수 키 규칙에 따라 위로 증가 할 수 있음을 보여줍니다.
또 다른 혼합 시나리오를 살펴 보겠습니다.
<span><span><span class="hljs-variable">$result1</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_fill</span></span><span>(-</span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-string">'X'</span></span><span>);
</span><span><span class="hljs-variable">$result2</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_fill</span></span><span>(</span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-string">'Y'</span></span><span>);
</span><span><span class="hljs-variable">$merged</span></span><span> = </span><span><span class="hljs-variable">$result1</span></span><span> + </span><span><span class="hljs-variable">$result2</span></span><span>; </span><span><span class="hljs-comment">// 배열을 사용한 추가</span></span><span>
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$merged</span></span><span>);
</span></span>출력 결과 :
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[-</span><span><span class="hljs-number">2</span></span><span>] => X
[-</span><span><span class="hljs-number">1</span></span><span>] => X
[</span><span><span class="hljs-number">3</span></span><span>] => Y
[</span><span><span class="hljs-number">4</span></span><span>] => Y
)
</span></span>이것은 부정적이고 긍정적 인 지수가 동시에 존재하더라도 여전히 독립적 인 키 네임 스페이스를 유지하고 충돌하지 않을 것임을 보여줍니다.
배열 키는 음수 <br>를 허용합니다 PHP에서 배열 키는 정수 인 한 양수 또는 음수 일 수 있습니다.
array_merge <br>의 차이 Array_Merge를 사용하면 값 키가 다시 표시되고 음수 키는 0부터 시작하는 양수 정수로 재구성됩니다.
예:
<span><span><span class="hljs-variable">$a</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_fill</span></span><span>(-</span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-string">'Z'</span></span><span>);
</span><span><span class="hljs-variable">$b</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_fill</span></span><span>(</span><span><span class="hljs-number">5</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-string">'W'</span></span><span>);
</span><span><span class="hljs-variable">$merged</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_merge</span></span><span>(</span><span><span class="hljs-variable">$a</span></span><span>, </span><span><span class="hljs-variable">$b</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$merged</span></span><span>);
</span></span>출력 결과 :
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[</span><span><span class="hljs-number">0</span></span><span>] => Z
[</span><span><span class="hljs-number">1</span></span><span>] => Z
[</span><span><span class="hljs-number">2</span></span><span>] => Z
[</span><span><span class="hljs-number">3</span></span><span>] => W
[</span><span><span class="hljs-number">4</span></span><span>] => W
)
</span></span>Merge 프로세스 중에 네거티브 인덱스가 원래의 키 값을 잃어 버릴 것이며 흡수 될 것임을 알 수 있습니다.