Memangkas Rentetan Berbilangbait dalam PHP
Dalam PHP, memotong rentetan berbilangbait boleh menjadi tugas yang rumit. Artikel ini menangani cabaran memotong rentetan sedemikian kepada bilangan aksara tertentu, dengan mengambil kira pengekodan aksara berbilang bait dan sempadan perkataan.
Untuk mencapainya, satu pendekatan melibatkan penggunaan fungsi mb_strimwidth() terbina dalam PHP, yang membolehkan untuk pemotongan rentetan dengan lebar yang ditentukan. Walau bagaimanapun, fungsi ini tidak mengambil kira sempadan perkataan.
Pelaksanaan Tersuai untuk Pemangkasan
Pelaksanaan tersuai boleh dibuat untuk mengendalikan pengekodan aksara berbilang bait dan sempadan perkataan:
Contoh Penggunaan:
function truncate($string, $chars = 50, $terminator = ' …') { // Calculate truncation length $trunc_len = $chars - strlen($terminator); // Validate string length if (strlen($string) <= $trunc_len) { return $string; } // Find word boundary $space_pos = mb_strrpos($string, ' ', -$trunc_len); // Cut string if ($space_pos !== false) { $truncated_string = mb_substr($string, 0, $space_pos); } else { $truncated_string = mb_strimwidth($string, 0, $trunc_len); } // Append terminator return $truncated_string . $terminator; }
Fungsi ini boleh digunakan untuk memotong rentetan berbilangbait, mengambil kira pengekodan aksara dan sempadan perkataan. Ia menyediakan penyelesaian yang mudah dan mantap untuk tugas PHP biasa ini.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memotong Rentetan Berbilangbait dengan Selamat dalam PHP Semasa Memelihara Sempadan Perkataan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!