Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Memisahkan Rentetan Berbilang Talian dengan Amanah dalam PHP?
Memisahkan Rentetan PHP oleh Aksara Baris Baharu
Apabila berurusan dengan input berbilang baris, adalah perkara biasa untuk membahagikan rentetan kepada susunan individu garisan. Fungsi letupan PHP boleh digunakan untuk tujuan ini, tetapi ia memerlukan pembatas yang betul untuk membahagikan rentetan dengan tepat.
Percubaan awal, menggunakan explode('nr', $_POST['skuList']), gagal kerana ia menganggap watak baris baharu ialah pemulangan gerabak gaya Windows diikuti dengan suapan baris (rn). Walau bagaimanapun, bergantung pada sistem pengendalian dan sumber input, aksara baris baharu mungkin berbeza-beza.
Amalan Terbaik: Menggunakan PHP_EOL
Untuk menangani pergantungan sistem ini, disyorkan untuk menggunakan pemalar PHP PHP_EOL. Pemalar ini mewakili aksara akhir baris untuk sistem semasa, memastikan rentetan dipisahkan secara konsisten tanpa mengira persekitaran.
$skuList = explode(PHP_EOL, $_POST['skuList']);
Awas: Ketergantungan Sistem dalam Data
Semasa menggunakan PHP_EOL menjadikan sistem kod bebas, adalah penting untuk mengetahui isu yang mungkin berlaku apabila memindahkan data antara sistem. Pemalar PHP_EOL sistem baharu mungkin berbeza, berpotensi memecahkan data yang disimpan. Untuk mengelakkan ini, hurai sepenuhnya dan bersihkan data sebelum storan untuk mengalih keluar komponen yang bergantung kepada sistem.
Watak Baris Baharu Khusus Penyemak Imbas
Dalam konteks kes penggunaan khusus ini, perlu diperhatikan bahawa rentetan itu datang daripada penyemak imbas. Pelayar menggunakan aksara baris baharu yang berbeza bergantung pada sistem pengendalian. Untuk mengendalikan semua kemungkinan, ungkapan biasa berikut boleh digunakan:
$skuList = preg_split('/\r\n|\r|\n/', $_POST['skuList']);
Ungkapan ini sepadan dengan mana-mana aksara baris baharu yang mungkin, memastikan rentetan dipisahkan dengan betul tanpa mengira sumbernya.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memisahkan Rentetan Berbilang Talian dengan Amanah dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!