Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Meletupkan Array dengan \', \' dan \'dan\' Sebelum Elemen Terakhir?
Meletupkan tatasusunan ke dalam rentetan menggunakan senarai yang dipisahkan koma ialah tugas biasa. Walau bagaimanapun, apabila anda perlu menambah "dan" sebelum item terakhir, ia tidak selalunya mudah.
Fungsi implode() boleh digunakan untuk menggabungkan unsur-unsur sesuatu tatasusunan ke dalam rentetan, dengan pemisah yang ditentukan. Contohnya, kod berikut akan meletupkan pelbagai nama minuman ke dalam senarai yang dipisahkan koma:
$listArrau = ['coke', 'sprite', 'fanta']; $listString = implode(', ', $listArrau);
Ini akan menghasilkan rentetan berikut:
coke, sprite, fanta
Untuk memasukkan "dan" sebelum item terakhir, kita perlu mengubah suai proses letupan. Berikut ialah penyelesaian garis panjang:
echo join(' and ', array_filter(array_merge(array(join(', ', array_slice($array, 0, -1))), array_slice($array, -1)), 'strlen'));
Ungkapan ini terbahagi kepada beberapa langkah:
Berikut ialah versi verbose dengan langkah-langkah dipisahkan:
$last = array_slice($array, -1); $first = join(', ', array_slice($array, 0, -1)); $both = array_filter(array_merge(array($first), $last), 'strlen'); echo join(' and ', $both);
Pendekatan berbilang langkah ini membolehkan kami mengendalikan kes dengan sebarang bilangan item, termasuk 0, 1 dan 2 item, dengan betul.
Atas ialah kandungan terperinci Bagaimana untuk Meletupkan Array dengan \', \' dan \'dan\' Sebelum Elemen Terakhir?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!