Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk memisahkan array dalam php

Bagaimana untuk memisahkan array dalam php

PHPz
Lepaskan: 2023-05-19 12:42:09
asal
2318 orang telah melayarinya

Dalam pengaturcaraan PHP, kita sering menghadapi situasi di mana kita perlu membahagikan tatasusunan besar kepada beberapa tatasusunan kecil. Ini dilakukan terutamanya untuk memudahkan pemprosesan dan operasi program dan untuk mengelakkan gelung atau operasi traversal yang berlebihan. Mari belajar cara membahagi tatasusunan dalam PHP.

1. Gunakan fungsi array_chunk() untuk memisahkan array

PHP menyediakan fungsi array_chunk() yang sangat mudah untuk memisahkan array. Fungsi fungsi ini adalah untuk memisahkan tatasusunan kepada beberapa tatasusunan kecil dengan panjang yang ditentukan.

digunakan seperti berikut:

array array_chunk (array $array , int $size [, bool $preserve_keys = false ] )
Salin selepas log masuk

Antaranya, $array ialah tatasusunan yang perlu dipecah, $size ialah panjang setiap tatasusunan kecil yang ditentukan, dan $preserve_keys digunakan untuk menunjukkan sama ada untuk mengekalkan nama kunci asal. Jika $preserve_keys ditetapkan kepada benar, nama kunci dalam tatasusunan asal akan dikekalkan.

Berikut ialah kod sampel:

<?php
  $arr = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm');
  $new_arr = array_chunk($arr, 4);

  print_r($new_arr);
?>
Salin selepas log masuk

Keputusan yang dijalankan adalah seperti berikut:

Array
(
    [0] => Array
        (
            [0] => a
            [1] => b
            [2] => c
            [3] => d
        )

    [1] => Array
        (
            [0] => e
            [1] => f
            [2] => g
            [3] => h
        )

    [2] => Array
        (
            [0] => i
            [1] => j
            [2] => k
            [3] => l
        )

    [3] => Array
        (
            [0] => m
        )

)
Salin selepas log masuk

2 Gunakan fungsi array_slice() untuk memisahkan tatasusunan

Selain array_chunk() Sebagai tambahan kepada fungsi, anda juga boleh menggunakan fungsi array_slice() untuk memisahkan tatasusunan.

Fungsi array_slice() adalah untuk mengembalikan subarray dengan panjang yang ditentukan. Parameter pertamanya ialah tatasusunan yang akan dipecah, parameter kedua ialah kedudukan dalam tatasusunan untuk memulakan pemisahan, dan parameter ketiga ialah panjang yang hendak dipecahkan, ia kembali dari kedudukan permulaan ke penghujung tatasusunan .

Berikut ialah contoh kod:

<?php
  $arr = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm');
  $new_arr = array();
  $offset = 0;
  $length = 4;

  while ($offset < count($arr)) {
    $temp_arr = array_slice($arr, $offset, $length);
    array_push($new_arr, $temp_arr);
    $offset += $length;
  }

  print_r($new_arr);
?>
Salin selepas log masuk

Hasil larian adalah sama seperti contoh kod sebelumnya.

3. Gunakan gelung for untuk melintasi dan membelah tatasusunan

Selain menggunakan fungsi di atas, anda juga boleh menggunakan gelung for untuk melintasi dan membelah tatasusunan.

Berikut ialah contoh kod:

<?php
  $arr = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm');
  $new_arr = array();
  $length = 4;

  for ($i = 0; $i < count($arr); $i += $length) {
    $temp_arr = array();
    for ($j = $i; $j < $i + $length; $j++) {
      if (isset($arr[$j])) {
        array_push($temp_arr, $arr[$j]);
      }
    }
    array_push($new_arr, $temp_arr);
  }

  print_r($new_arr);
?>
Salin selepas log masuk

Hasil yang dijalankan juga sama seperti dua contoh kod sebelumnya.

Ringkasan

Menggunakan PHP untuk memisahkan tatasusunan ialah keperluan yang sering ditemui dalam pengaturcaraan Mempelajari fungsi biasa dan kaedah traversal boleh meningkatkan kecekapan pengaturcaraan. Artikel ini memperkenalkan tiga kaedah untuk membelah tatasusunan Menggunakan fungsi array_chunk() adalah yang paling mudah dan paling mudah menyatakan offset dan panjang tatasusunan , yang lebih menyusahkan; walaupun kod itu agak rumit menggunakan gelung untuk melintasi, ia lebih fleksibel. Dalam perkembangan sebenar, anda boleh memilih kaedah yang sesuai mengikut keperluan anda.

Atas ialah kandungan terperinci Bagaimana untuk memisahkan array dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan