Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Memotong Rentetan Berbilang Bait Semasa Mengekalkan Sempadan Perkataan dalam PHP?

Bagaimanakah Saya Boleh Memotong Rentetan Berbilang Bait Semasa Mengekalkan Sempadan Perkataan dalam PHP?

Mary-Kate Olsen
Lepaskan: 2024-12-14 17:02:18
asal
307 orang telah melayarinya

How Can I Truncate Multibyte Strings While Preserving Word Boundaries in PHP?

Memangkas Rentetan Berbilangbait dengan Kawalan Sempadan Kata

Apabila bekerja dengan rentetan berbilangbait, memotongnya kepada kiraan aksara tertentu boleh menjadi tugas yang mencabar , terutamanya apabila mempertimbangkan sempadan perkataan. Satu cara biasa untuk menangani perkara ini ialah menggunakan fungsi rentetan berbilangbait yang disediakan oleh PHP.

Satu pendekatan melibatkan penggunaan langkah berikut:

  1. Tolak panjang rentetan terminator daripada yang dikehendaki panjang terpotong.
  2. Tentukan jika rentetan melebihi had yang dikira.
  3. Kenal pasti aksara ruang terakhir dalam rentetan dalam had yang dikira.
  4. Potong rentetan sama ada pada ruang terakhir atau pada had yang dikira.
  5. Tambahkan rentetan penamat pada bahagian yang dipotong.

Walaupun pendekatan ini nampak logik, melaksanakannya menggunakan fungsi str atau mb_ boleh menjadi rumit. Sebagai alternatif, PHP menawarkan fungsi terbina dalam yang melaksanakan pemangkasan berbilangbait: mb_strimwidth.

<?php
$string = "Answer to the Ultimate Question of Life, the Universe, and Everything";
$maxLength = 50;
$terminator = ' …';
$truncatedString = mb_strimwidth($string, 0, $maxLength - strlen($terminator), $terminator);

echo $truncatedString; // Output: "Answer to the Ultimate Question of Life, the …"
?>
Salin selepas log masuk

Walaupun mb_strimwidth tidak mengambil kira sempadan perkataan, ia menyediakan kaedah yang boleh dipercayai dan mudah untuk memotong rentetan berbilangbait.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memotong Rentetan Berbilang Bait Semasa Mengekalkan Sempadan Perkataan dalam PHP?. 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