PHPでは、 array_fill()とarray_pad()は、一般的に使用される2つの配列操作関数です。それらの機能は多少似ていますが、さまざまなシナリオに適しています。これら2つの機能の違いを理解することは、エンコードプロセス中により良い選択をするのに役立ちます。この記事では、これら2つの機能の使用法と適用可能なシナリオを紹介し、それらの違いを詳細に比較します。
array_fill()は、指定された値で配列を入力するために使用されます。配列のキー値は、指定された開始位置から指定された数値まで開始されます。その構文は次のとおりです。
array array_fill(int $start_index, int $num, mixed $value)
$ start_index :フィルの開始インデックス。
$ num :埋める要素の数。
$ value :埋める値。
使用例:
<?php
$filled_array = array_fill(0, 5, 'm66.net');
print_r($filled_array);
?>
出力:
Array
(
[0] => m66.net
[1] => m66.net
[2] => m66.net
[3] => m66.net
[4] => m66.net
)
この関数は、インデックス0から始まる配列を作成し、それぞれが「M66.net」の値を持つ5つの要素を含みます。
array_pad()は、アレイを指定されたサイズに拡張するために使用されます。元の配列のサイズがターゲットサイズよりも小さい場合、 array_pad()は配列の最後に指定された値を埋めます。宛先のサイズがアレイの現在のサイズよりも小さい場合、元の配列は変更されません。構文は次のとおりです。
array array_pad(array $array, int $size, mixed $value)
$配列:元の配列。
$サイズ:ターゲット配列のサイズ。
$ value :埋める値。
使用例:
<?php
$original_array = ['apple', 'banana', 'cherry'];
$padded_array = array_pad($original_array, 5, 'm66.net');
print_r($padded_array);
?>
出力:
Array
(
[0] => apple
[1] => banana
[2] => cherry
[3] => m66.net
[4] => m66.net
)
この例では、元の配列には3つの要素しかありませんが、 Array_Pad()を介して5つの要素に拡張され、後者の2つの要素には「M66.net」が入っています。
これらの2つの機能は似ていますが、使用とアプリケーションのシナリオは異なります。
配列を入力する方法:
array_fill()は、指定されたインデックス位置から始まる指定された数の要素を入力することです。
array_pad()ターゲットサイズに応じて配列を展開し、配列の最後に要素を追加できます。
パラメーターの違い:
array_fill()の最初のパラメーターは、fillの開始インデックス、2番目のパラメーターは充填された要素の数、3番目のパラメーターは値に満たされます。
array_pad()には元の配列が必要、最初のパラメーターは元の配列、2番目のパラメーターはターゲット配列のサイズ、3番目のパラメーターはパディングの値です。
該当するシナリオ:
array_fill()は、特定のインデックスから指定された数の要素を入力する必要があるシナリオに適しています。たとえば、インデックス0から5つの同一の要素を入力する必要があります。
array_pad()は、特定のターゲットサイズに到達するために既存の配列を拡張する必要があるシナリオに適しています。たとえば、そのサイズが指定された長さになるように配列を入力する場合は、 array_pad()を使用できます。
array_fill()を使用:特に特定のインデックスから入力を開始する場合は、特定の数の指定された値を持つ配列を作成する必要がある場合は、array_fill()を使用します。
Array_Pad()を使用:既にArrayを持っていて、ターゲットサイズに拡張する場合は、 Array_Pad()を使用して、配列の最後に指定された値を追加します。
これらの2つの機能を選択することはあなたのニーズに依存し、それらの違いを理解することで、適切なシナリオで最良の選択をするのに役立ちます。