Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk meningkatkan panjang tatasusunan secara dinamik dalam php

Bagaimana untuk meningkatkan panjang tatasusunan secara dinamik dalam php

PHPz
PHPzasal
2023-04-25 09:02:52554semak imbas

Dalam PHP, tatasusunan ialah struktur data yang sangat biasa dan penting yang boleh digunakan untuk menyimpan dan mengendalikan set elemen data yang teratur. Secara amnya, kami menentukan panjang tatasusunan apabila mentakrifkannya, contohnya: $arr = tatasusunan(1, 2, 3, 4, 5). Walau bagaimanapun, dalam beberapa kes kita perlu meningkatkan panjang tatasusunan secara dinamik pada masa jalan untuk menampung keperluan untuk menyimpan lebih banyak elemen. Artikel ini akan memperkenalkan cara meningkatkan panjang tatasusunan dalam PHP secara dinamik.

  1. Gunakan fungsi array_push()
    fungsi array_push() ialah fungsi terbina dalam PHP yang menambah satu atau lebih elemen pada penghujung tatasusunan. Sintaks khusus adalah seperti berikut:

array_push(array $array, mixed $value1 [, mixed $value2 …]);

Antaranya, parameter $array mewakili tatasusunan untuk dikendalikan, $ Parameter seperti value1 dan $value2 mewakili nilai elemen yang akan ditambah. Fungsi ini menambah semua argumen pada penghujung tatasusunan $array dan mengembalikan panjang tatasusunan baharu. Contohnya:

$arr = array(1, 2, 3);
$len = array_push($arr, 4, 5);
print_r($arr); // 输出:Array([0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5)
echo $len; // 输出:5

Dalam contoh di atas, tatasusunan $arr panjang 3 pertama kali ditakrifkan, dan kemudian dua elemen 4 dan 5 ditambah pada penghujung tatasusunan melalui fungsi array_push(). Akhir sekali, gunakan fungsi print_r() untuk mengeluarkan tatasusunan $arr Anda boleh melihat bahawa panjang tatasusunan telah menjadi 5, dan gunakan gema untuk mengeluarkan nilai pembolehubah $len sebagai 5, menunjukkan bahawa fungsi array_push() mengembalikan. panjang tatasusunan selepas menambah elemen baharu.

  1. Gunakan operator []
    Selepas PHP 5.4, terdapat cara baharu untuk menambah elemen baharu dari hujung tatasusunan, menggunakan operator []. Operator ini bersamaan dengan memanggil fungsi array_push() dan sintaksnya adalah seperti berikut:

$array[] = $value;

di mana $array mewakili tatasusunan yang akan dikendalikan, nilai $ mewakili nilai elemen yang akan ditambah. Contohnya:

$arr = array(1, 2, 3);
$arr[] = 4;
$arr[] = 5;
print_r($arr); // 输出:Array([0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5)

Dalam contoh di atas, tatasusunan $arr panjang 3 mula-mula dibuat, dan kemudian elemen 4 dan 5 ditambahkan pada penghujung tatasusunan menggunakan operator [] masing-masing. Akhir sekali, gunakan fungsi print_r() untuk mengeluarkan tatasusunan $arr Anda boleh melihat bahawa panjang tatasusunan telah menjadi 5 dan elemen baharu telah ditambahkan pada penghujung tatasusunan.

Perlu diambil perhatian bahawa apabila menggunakan operator [] untuk menambah panjang tatasusunan, nilai elemen mestilah pembolehubah atau ungkapan, bukan nilai tetap. Sebagai contoh, kod berikut akan menjana ralat sintaks:

$arr[] = 1, 2, 3;
  1. Menggunakan fungsi array_unshift()
    Berbeza dengan fungsi array_push(), PHP juga menyediakan fungsi yang boleh menambah satu atau lebih elemen Fungsi kepada permulaan tatasusunan, iaitu array_unshift(). Sintaksnya adalah seperti berikut:

array_unshift(array $array, mixed $value1 [, mixed $value2 …]);

Di mana, $array parameter mewakili array yang akan dikendalikan, $value1 , $value2 dan parameter lain mewakili nilai elemen yang akan ditambah. Fungsi ini menambah semua argumen pada permulaan tatasusunan $array dan mengembalikan panjang tatasusunan baharu. Contohnya:

$arr = array(4, 5, 6);
$len = array_unshift($arr, 1, 2, 3);
print_r($arr); // 输出:Array([0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6)
echo $len; // 输出:6

Dalam contoh di atas, tatasusunan $arr panjang 3 pertama kali ditakrifkan, dan kemudian tiga elemen 1, 2 dan 3 ditambah pada permulaan tatasusunan melalui tatasusunan_unshift() fungsi. Akhir sekali, gunakan fungsi print_r() untuk mengeluarkan tatasusunan $arr Anda boleh melihat bahawa panjang tatasusunan telah menjadi 6, dan gunakan gema untuk mengeluarkan nilai pembolehubah $len sebagai 6, menunjukkan bahawa fungsi array_unshift() mengembalikan. panjang tatasusunan selepas menambah elemen baharu.

Perlu diambil perhatian bahawa apabila menggunakan fungsi array_unshift() untuk menambah panjang tatasusunan, susunan nilai elemen akan diterbalikkan daripada susunan penambahan. Sebagai contoh, susunan nilai elemen tambahan dalam contoh di atas ialah 1, 2, 3, tetapi susunan elemen ini dalam tatasusunan output berubah kepada 3, 2, 1.

  1. Gunakan fungsi range() dan array_merge()
    Selain kaedah di atas, anda juga boleh menggunakan fungsi range() dan array_merge() untuk meningkatkan panjang array secara dinamik . Fungsi

julat() digunakan untuk mencipta tatasusunan yang mengandungi nilai elemen dalam julat yang ditentukan Sintaksnya adalah seperti berikut:

julat(campuran $mula, campuran $. tamat [, nombor $ step = 1]);

Antaranya, $start dan $end mewakili julat elemen tatasusunan yang akan dibuat, dan $step mewakili saiz langkah (lalai ialah 1). Contohnya:

$arr = range(1, 5);
print_r($arr); // 输出:Array([0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5)

Dalam contoh di atas, fungsi range() mencipta tatasusunan yang mengandungi semua integer dari 1 hingga 5 dan kemudian mencetak tatasusunan menggunakan fungsi print_r().

fungsi array_merge() digunakan untuk menggabungkan satu atau lebih tatasusunan menjadi satu tatasusunan adalah seperti berikut:

array_merge(array $array1 [, array $array2 …]);

Antaranya, $array1, $array2 dan parameter lain mewakili tatasusunan yang hendak digabungkan, yang digabungkan menjadi tatasusunan baharu dalam susunan parameter. Contohnya:

$arr1 = range(1, 3);
$arr2 = range(4, 6);
$arr = array_merge($arr1, $arr2);
print_r($arr); // 输出:Array([0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6)
Dalam contoh di atas, fungsi julat() pertama kali digunakan untuk mencipta dua tatasusunan $arr1 dan $arr2, masing-masing mengandungi integer daripada 1 hingga 3 dan 4 hingga 6. Kedua-dua tatasusunan kemudiannya digabungkan menjadi tatasusunan baru $arr menggunakan fungsi array_merge() dan dikeluarkan menggunakan fungsi print_r().

Kesimpulan

Artikel ini memperkenalkan beberapa kaedah untuk meningkatkan panjang tatasusunan dalam PHP secara dinamik, termasuk menggunakan fungsi array_push(), [] operator, fungsi array_unshift(), range() fungsi dan array_merge( ) fungsi . Apabila menggunakannya, anda perlu memilih kaedah yang sesuai mengikut keadaan sebenar. Pada masa yang sama, anda juga perlu memberi perhatian kepada susunan elemen tatasusunan dan nilai pulangan setiap kaedah.

Atas ialah kandungan terperinci Bagaimana untuk meningkatkan panjang tatasusunan secara dinamik dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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