Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengekalkan Sempadan Perkataan Semasa Memotong Rentetan?

Bagaimana untuk Mengekalkan Sempadan Perkataan Semasa Memotong Rentetan?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-24 06:32:02920semak imbas

How to Maintain Word Boundaries When Truncating Strings?

Mengekalkan Sempadan Perkataan Semasa Memotong Rentetan

Dalam pertanyaan sebelumnya, pengguna berusaha untuk memotong rentetan kepada 100 aksara menggunakan substr() fungsi. Walau bagaimanapun, kaedah ini hanya mengambil 100 aksara pertama, yang berpotensi memecahkan perkataan dalam proses.

Pernyataan Masalah

Objektifnya adalah untuk memotong rentetan kepada maksimum 100 watak sambil memastikan perkataan kekal utuh. Contohnya:

$big = "This is a sentence that has more than 100 characters in it, and I want to return a string of only full words that is no more than 100 characters!"

$small = truncate_string($big);

echo $small;

// OUTPUT: "This is a sentence that has more than 100 characters in it, and I want to return a string of only"

Penyelesaian PHP

Kod berikut menyediakan penyelesaian:

<code class="php">function truncate_string($string)
{
    $pos = strpos($string, ' ', 200);
    return substr($string, 0, $pos);
}</code>

Penjelasan:

  • Fungsi strpos() mencari aksara ruang seterusnya dalam rentetan dalam 200 aksara pertama. Ini memastikan kami tidak memotong melepasi 100 aksara pertama.
  • Fungsi substr() mengembalikan subrentetan dari permulaan rentetan ke kedudukan yang ditentukan, iaitu kedudukan ruang pertama dalam 200 pertama watak.

Atas ialah kandungan terperinci Bagaimana untuk Mengekalkan Sempadan Perkataan Semasa Memotong Rentetan?. 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