現在の位置: ホーム> 最新記事一覧> array_sliceでarray_valuesを使用する方法は?アレイ処理効率を改善するための実用的なヒント

array_sliceでarray_valuesを使用する方法は?アレイ処理効率を改善するための実用的なヒント

gitbox 2025-09-17

PHPでは、アレイ操作は日常開発において避けられないタスクです。 array_valuesarray_sliceは、非常に一般的に使用される2つの配列関数であり、開発者がより効率的に配列を処理および操作するのに役立ちます。今日は、これらの2つの機能を一緒に使用して、配列処理の効率を向上させる方法に飛び込みます。

1。array_values関数の概要

array_values関数の関数は、配列内のすべての値を返し、配列のキーを再インデックスすることです。この関数は、配列内のすべての値を抽出し、キー名を無視し、0から始まるインデックス配列を返します。この関数は通常、次の場合に使用されます。

  • 配列内のキー名を削除する必要がある場合、配列の値だけを気にします。

  • 元の配列のキーが連続していない場合は、 array_valuesを使用してインデックスを再注文し、配列キー名が0から始まる連続整数であることを確認します。

 <span><span><span class="hljs-variable">$array</span></span><span> = [</span><span><span class="hljs-string">"a"</span></span><span> =&gt; </span><span><span class="hljs-string">"apple"</span></span><span>, </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-string">"banana"</span></span><span>, </span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-string">"cherry"</span></span><span>];
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_values</span></span><span>(</span><span><span class="hljs-variable">$array</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>] =&gt; apple
    [</span><span><span class="hljs-number">1</span></span><span>] =&gt; banana
    [</span><span><span class="hljs-number">2</span></span><span>] =&gt; cherry
)
</span></span>

上に示すように、 array_values関数は再インネックスされた配列を返し、元のキー名( abc )は無視され、値のみが保持され、数値指数によって並べ替えられます。

2。array_slice関数の紹介

array_slice関数は、配列から要素の一部を抽出し、その部分のサブアレイを返すために使用されます。開発者は、抽出を開始する場所と抽出する要素の数を指定できます。この関数は元の配列を変更するのではなく、新しいサブアレイを返します。

 <span><span><span class="hljs-variable">$array</span></span><span> = [</span><span><span class="hljs-number">1</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-number">4</span></span><span>, </span><span><span class="hljs-number">5</span></span><span>];
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_slice</span></span><span>(</span><span><span class="hljs-variable">$array</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-comment">// インデックスから 2 抽出を開始します 2 要素</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>] =&gt; </span><span><span class="hljs-number">3</span></span><span>
    [</span><span><span class="hljs-number">1</span></span><span>] =&gt; </span><span><span class="hljs-number">4</span></span><span>
)
</span></span>

この例では、 array_sliceはインデックス2で始まり、2つの要素を抽出し、新しい配列を返します[3、4]

3。array_valuesは、 array_sliceと組み合わせて使用​​されます

Array_valuesArray_sliceの組み合わせは、特に不連続なインデックスアレイを扱う場合、大きな利点を完全にプレイできます。これらの2つの機能を組み合わせることで、返された配列に正しいキー値があることを確認しながら、配列を効率的にスライスできます。

いくつかの非連続インデックスを含む配列があり、 array_sliceを使用してスライスした後、インデックスが不連続になる可能性があるとします。この時点で、返された配列が0からインデックス化されていることを確認する場合は、 array_sliceの後にarray_sliceで再インデックスできます。

 <span><span><span class="hljs-variable">$array</span></span><span> = [</span><span><span class="hljs-number">5</span></span><span> =&gt; </span><span><span class="hljs-string">"apple"</span></span><span>, </span><span><span class="hljs-number">10</span></span><span> =&gt; </span><span><span class="hljs-string">"banana"</span></span><span>, </span><span><span class="hljs-number">15</span></span><span> =&gt; </span><span><span class="hljs-string">"cherry"</span></span><span>];
</span><span><span class="hljs-variable">$sliced</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_slice</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>, </span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>);  </span><span><span class="hljs-comment">// インデックスから 1 始める,抽出する 2 要素</span></span><span>
</span><span><span class="hljs-variable">$reindexed</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_values</span></span><span>(</span><span><span class="hljs-variable">$sliced</span></span><span>);    </span><span><span class="hljs-comment">// Reindex</span></span><span>

</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$reindexed</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>] =&gt; banana
    [</span><span><span class="hljs-number">1</span></span><span>] =&gt; cherry
)
</span></span>

この例では、 array_sliceは配列に「バナナ」「チェリー」を抽出しますが、インデックスはまだ0と1(ソース配列では10と15)です。 array_valuesを使用した後、アレイのキーは0から起動してリセットされ、インデックスの連続性が保証されます。

4。効率を改善するシナリオ

Array_slicearray_valuesの組み合わせは、特にアレイから特定の部品を抽出する必要がある場合、大規模なデータを扱うときに特に重要です。必要な部品はarray_sliceを介して抽出され、不要なデータの読み込みと保存メモリが削減されます。同時に、返された配列インデックスはarray_valuesを介して連続して行われ、後続の処理が容易になります。

さらに、PHPのArray_Slice機能自体は、基礎となる実装で優れたパフォーマンスを備えているため、 Array_Valuesで使用すると、コード操作の効率とArray操作の単純さを確保できます。

5。概要

Array_valuesArray_sliceの組み合わせにより、PHP開発者はアレイをより柔軟かつ効率的に操作できます。 array_sliceは配列をスライスするために使用されますが、 array_valuesはインデックスの連続性を確保するために使用されます。 2つの組み合わせの後、コード構造を効果的に簡素化し、特に不規則または不連続なインデックスアレイを扱う場合、コード実行効率を改善できます。この手法は、アレイ操作の保守性を大幅に改善できます。

小規模なアレイや大規模なアレイを扱う場合でも、これら2つの機能を使用するスキルを習得すると、PHPプログラミングがより便利になります。