Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Memisahkan Rentetan ke dalam Array Berbilang Dimensi dengan Cekap dalam PHP Tanpa Gelung?

Bagaimana untuk Memisahkan Rentetan ke dalam Array Berbilang Dimensi dengan Cekap dalam PHP Tanpa Gelung?

Susan Sarandon
Susan Sarandonasal
2024-10-31 03:41:01155semak imbas

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

Manipulasi Rentetan: Membahagikan Rentetan kepada Tatasusunan Berbilang Dimensi dengan Cekap

Memisahkan rentetan kepada tatasusunan berbilang dimensi ialah tugas biasa dalam pengaturcaraan. Pendekatan tradisional sering bergantung pada gelung berulang untuk mencapai ini. Walau bagaimanapun, PHP menawarkan penyelesaian tanpa gelung yang cekap.

Untuk rentetan seperti "A,5|B,3|C,8," tugasnya adalah untuk mengubahnya menjadi tatasusunan berbilang dimensi seperti:

[
    ['A', 5],
    ['B', 3],
    ['C', 8],
]

Penyelesaian melibatkan penggabungan kuasa explode() dan array_map(). Begini cara ia berfungsi:

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

// Split the string into individual parts based on the pipe symbol
$parts = explode('|', $str);

// Use array_map() to transform each part into an array
$a = array_map(
    function ($substr) {
        // Explode each part again to separate the values
        return explode(',', $substr);
    },
    $parts
);

Dengan menggabungkan array_map() dan explode(), gelung pada bahagian individu dikapsulkan dalam fungsi terbina dalam, menghapuskan keperluan untuk gelung eksplisit dalam kod anda.

Tatasusunan $a yang terhasil ialah tatasusunan berbilang dimensi yang diingini, dengan setiap elemen mewakili sebahagian daripada rentetan asal dipecah menjadi tatasusunan tersendiri:

var_dump($a);

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)</code>

Atas ialah kandungan terperinci Bagaimana untuk Memisahkan Rentetan ke dalam Array Berbilang Dimensi dengan Cekap dalam PHP Tanpa Gelung?. 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