Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Memisahkan Rentetan kepada Tatasusunan Multidimensi dalam PHP Tanpa Gelung Eksplisit?

Bagaimana untuk Memisahkan Rentetan kepada Tatasusunan Multidimensi dalam PHP Tanpa Gelung Eksplisit?

Mary-Kate Olsen
Lepaskan: 2024-10-29 03:56:29
asal
1048 orang telah melayarinya

How to Split a String into a Multidimensional Array in PHP Without Explicit Loops?

Memisahkan Rentetan kepada Tatasusunan Berbilang Dimensi dalam PHP Tanpa Gelung

Untuk memisahkan rentetan kepada tatasusunan berbilang dimensi dalam PHP tanpa bergantung pada struktur lelaran , gabungan fungsi tatasusunan boleh digunakan untuk mencapai hasil yang diinginkan. Pertimbangkan rentetan dalam format "A,5|B,3|C,8" sebagai contoh.

Menggunakan peta_susun dan meletup, anda boleh menyelesaikan tugas ini dengan cekap. Sebagai contoh, dalam PHP 5.3 dan ke atas, coretan kod berikut boleh digunakan:

<code class="php">$str = "A,5|B,3|C,8";

$a = array_map(
    function ($substr) {
        return explode(',', $substr);
    },
    explode('|', $str)
);
var_dump($a);</code>
Salin selepas log masuk

Coretan kod ini bermula dengan membelah rentetan input kepada tatasusunan subrentetan menggunakan fungsi letupan, yang memisahkan rentetan di watak paip. Kemudian, array_map digunakan untuk menggunakan fungsi explode pada setiap subrentetan, seterusnya membahagikannya kepada tatasusunan dua elemen: elemen pertama yang mengandungi huruf dan elemen kedua yang mengandungi nombor.

Hasilnya ialah tatasusunan berbilang dimensi di mana setiap tatasusunan dalam sepadan dengan sepasang tunggal huruf dan nombor daripada rentetan input:

array
  0 =>
    array
      0 => string 'A' (length=1)
      1 => string '5' (length=1)
  1 =>
    array
      0 => string 'B' (length=1)
      1 => string '3' (length=1)
  2 =>
    array
      0 => string 'C' (length=1)
      1 => string '8' (length=1)
Salin selepas log masuk

Walaupun penyelesaian ini menghapuskan gelung eksplisit dalam kod pengguna, adalah penting untuk ambil perhatian bahawa secara dalaman, array_map masih menggunakan gelung untuk lelaran ke atas tatasusunan input. Oleh itu, ketiadaan gelung dalam kod yang dibentangkan tidak membayangkan ketiadaan gelung sama sekali.

Atas ialah kandungan terperinci Bagaimana untuk Memisahkan Rentetan kepada Tatasusunan Multidimensi dalam PHP Tanpa Gelung Eksplisit?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan