Dalam PHP, kadangkala kita perlu memotong tatasusunan mengikut peraturan tertentu, seperti memotong mengikut nilai medan tertentu, atau memotong mengikut panjang tertentu, dsb. Pada masa ini, kita boleh menggunakan beberapa fungsi yang disediakan dalam PHP untuk menyelesaikan tugasan ini. Artikel ini akan memperkenalkan cara menggunakan fungsi PHP untuk memotong tatasusunan.
1. Gunakan fungsi array_chunk() untuk memotong tatasusunan
Fungsi array_chunk() boleh memotong tatasusunan mengikut panjang yang ditentukan, dan setiap bahagian potongan disimpan dalam item tatasusunan baharu dalam. Sintaks khusus adalah seperti berikut:
array array_chunk(array $array, int $size, bool $preserve_keys = false)
Maksud setiap parameter adalah seperti berikut:
Contohnya, jika terdapat tatasusunan $nums=['1','2','3','4','5','6','7',' 8' ,'9'], kita ingin memotong tatasusunan ini supaya setiap item tatasusunan mengandungi 3 elemen, kita boleh menggunakan kod berikut:
$new_array = array_chunk($nums,3); print_r($new_array);
Hasil output adalah seperti berikut:
Array ( [0] => Array ( [0] => 1 [1] => 2 [2] => 3 ) [1] => Array ( [0] => 4 [1] => 5 [2] => 6 ) [2] => Array ( [0] => 7 [1] => 8 [2] => 9 ) )
2. Gunakan fungsi array_slice() untuk memotong tatasusunan
Fungsi array_slice() boleh memotong tatasusunan mengikut julat indeks yang ditentukan dan mengembalikan tatasusunan yang dipotong. Sintaks khusus adalah seperti berikut:
array array_slice(array $array, int $offset, int $length = null, bool $preserve_keys = false)
Maksud setiap parameter adalah seperti berikut:
Contohnya, jika terdapat tatasusunan $nums=['1','2','3','4','5','6','7',' 8' ,'9'], kita ingin memotong tatasusunan ini daripada elemen ke-4 kepada elemen ke-7, kita boleh menggunakan kod berikut:
$new_array = array_slice($nums,3,4); print_r($new_array);
Hasil output adalah seperti berikut:
Array ( [0] => 4 [1] => 5 [2] => 6 [3] => 7 )
3. Gunakan fungsi array_filter() untuk memotong tatasusunan
Fungsi array_filter() boleh menapis tatasusunan mengikut peraturan yang ditetapkan dan mengembalikan tatasusunan yang memenuhi syarat. Sintaks khusus adalah seperti berikut:
array array_filter(array $array, callable $callback = null, int $flag = 0)
Maksud setiap parameter adalah seperti berikut:
Contohnya, jika terdapat tatasusunan $nums=['1','2','3','4','5','6','7',' 8' ,'9'], kami ingin menapis elemen ganjil daripada tatasusunan ini, kami boleh menggunakan kod berikut:
$new_array = array_filter($nums,function($var){return ($var%2==1);}); print_r($new_array);
Hasil output adalah seperti berikut:
Array ( [0] => 1 [2] => 3 [4] => 5 [6] => 7 [8] => 9 )
4. Gunakan gelung foreach untuk memotong Array
Selain menggunakan fungsi yang disediakan oleh PHP untuk memotong tatasusunan, kita juga boleh menggunakan gelung foreach untuk menyelesaikan tugasan ini. Kod khusus adalah seperti berikut:
$nums=['1','2','3','4','5','6','7','8','9']; $new_array=array(); $temp_array=array(); foreach ($nums as $key=>$value){ $temp_array[]=$value; if(($key+1)%3==0||$key==count($nums)-1){ $new_array[]=$temp_array; $temp_array=array(); } } print_r($new_array);
Hasil keluaran adalah seperti berikut:
Array ( [0] => Array ( [0] => 1 [1] => 2 [2] => 3 ) [1] => Array ( [0] => 4 [1] => 5 [2] => 6 ) [2] => Array ( [0] => 7 [1] => 8 [2] => 9 ) )
Di atas adalah empat kaedah menggunakan PHP untuk memotong tatasusunan Anda boleh memilih kaedah yang sesuai mengikut situasi sebenar.
Atas ialah kandungan terperinci Bagaimana untuk memotong array dalam php? Pengenalan kepada fungsi terbina dalam. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!