Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pisahkan rentetan kepada tatasusunan menggunakan fungsi explode() dalam PHP

Pisahkan rentetan kepada tatasusunan menggunakan fungsi explode() dalam PHP

WBOY
WBOYasal
2023-06-27 10:18:591474semak imbas

Dalam pembangunan PHP, rentetan selalunya perlu dipecahkan kepada beberapa subrentetan untuk memudahkan kami memproses data. Pada masa ini, PHP menyediakan fungsi explode() untuk membantu kami mencapai matlamat ini. Sintaks asas fungsi

explode() ialah:

explode(string $delimiter , string $string [, int $limit = PHP_MAXPATHLEN])

Antaranya, parameter $delimiter mewakili pembatas, parameter $string ialah rentetan yang akan dipisahkan dan parameter $limit adalah pilihan dan menentukan panjang maksimum daripada tatasusunan yang dikembalikan.

Perlu diambil perhatian bahawa parameter $delimiter boleh sama ada rentetan atau tatasusunan yang mengandungi berbilang pembatas. Apabila parameter $limit ditentukan, tatasusunan yang dikembalikan akan mengandungi paling banyak elemen $limit. Apabila parameter $limit ialah nombor negatif, hasil pembahagian lengkap dikembalikan.

Sekarang, mari kita lihat beberapa contoh.

Pisah rentetan ke dalam tatasusunan

Andaikan kita mempunyai rentetan berikut:

$str = "apple,banana,orange";

Kita kini perlu membahagi rentetan itu kepada tatasusunan mengikut koma, yang boleh ditulis seperti ini:

$arr = explode(",", $str);
print_r($arr);

Hasilnya adalah seperti berikut:

Array (
   [0] => apple
   [1] => banana
   [2] => orange
)

Dalam kod di atas, kami Gunakan koma sebagai pembatas untuk memisahkan rentetan $str kepada tatasusunan, dan kemudian gunakan fungsi print_r() untuk mengeluarkan kandungan tatasusunan.

Pisah rentetan kepada tatasusunan (pemisah tatasusunan)

Sekarang, mari lihat contoh lain. Katakan kita mempunyai tatasusunan berikut:

$arr = array("apple#banana#orange", "lemon#grape#pear");

Kita perlu menggunakan tanda "#" sebagai pemisah untuk memisahkan setiap elemen dalam tatasusunan kepada sub-tatasusunan. Pada masa ini, kita boleh mencapainya dengan cara berikut:

foreach ($arr as $str) {
   $subArr = explode("#", $str);
   print_r($subArr);
}

Kod di atas akan berulang melalui setiap elemen dalam tatasusunan dan membahagikannya kepada sub-tatasusunan baharu. Kemudian, kandungan setiap subarray dikeluarkan melalui fungsi print_r(). Outputnya ialah:

Array (
   [0] => apple
   [1] => banana
   [2] => orange
)
Array (
   [0] => lemon
   [1] => grape
   [2] => pear
)

Dalam contoh di atas, kami mengulangi setiap elemen tatasusunan $arr melalui gelung foreach. Kemudian, kami menggunakan fungsi explode() untuk memisahkan setiap rentetan dan menyimpan hasil pecahan ke dalam tatasusunan baharu. Akhir sekali, kami menggunakan fungsi print_r() untuk mengeluarkan setiap subarray.

Berpisah dengan sekatan

Kadangkala, kita perlu mengehadkan bilangan elemen yang dikembalikan oleh tatasusunan. Sebagai contoh, kita mempunyai rentetan berikut:

$str = "apple,banana,orange,lemon,grape";

Jika kita mahu memulangkan hanya tiga elemen pertama dalam tatasusunan, kita boleh menulis seperti ini:

$arr = explode(",", $str, 3);
print_r($arr);

Hasilnya akan dikeluarkan:

Array (
   [0] => apple
   [1] => banana
   [2] => orange,lemon,grape
)

Apabila parameter ketiga ialah a integer positif, fungsi explode() Mengembalikan bilangan elemen yang ditentukan Elemen yang melebihi nombor yang ditentukan akan digabungkan menjadi satu elemen tatasusunan. Apabila parameter ketiga adalah negatif, fungsi explode() mengembalikan semua elemen kecuali elemen "$limit" yang terakhir.

Dalam pembangunan, kita selalunya perlu memproses rentetan, seperti membaca, menulis, membelah dan operasi lain. Menggunakan fungsi explode(), kita boleh membahagikan rentetan ke dalam tatasusunan dengan mudah, menjadikannya lebih mudah untuk kita memanipulasi data.

Atas ialah kandungan terperinci Pisahkan rentetan kepada tatasusunan menggunakan fungsi explode() 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