Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Memastikan Fungsi substr PHP Berakhir pada Perkataan, Bukan Aksara?

Bagaimana untuk Memastikan Fungsi substr PHP Berakhir pada Perkataan, Bukan Aksara?

Barbara Streisand
Barbara Streisandasal
2024-11-08 08:51:02803semak imbas

How to Ensure PHP substr Function Ends at Words, Not Characters?

Pastikan PHP substr Fungsi Berakhir pada Perkataan, Bukan Aksara

Fungsi PHP substr() ialah alat yang berkuasa untuk memetik subrentetan daripada yang diberikan rentetan. Walau bagaimanapun, ia boleh mengecewakan apabila petikan berakhir di tengah-tengah perkataan. Untuk menyelesaikan masalah ini, kami boleh menggunakan ungkapan biasa untuk mencari sempadan perkataan yang terdekat untuk memastikan petikan berakhir pada pecahan perkataan semula jadi.

Penyelesaian Menggunakan Ungkapan Biasa:

coretan kod berikut menunjukkan cara mengubah suai panggilan substr() asal untuk mencapai tingkah laku ini:

substr($body, 0, strpos($body, ' ', 260))

Penjelasan:

  • strpos($body, ' ', 260) mencari kedudukan aksara ruang putih pertama (ruang antara perkataan) dalam subrentetan panjang 260 dari permulaan rentetan asal $body.
  • Jika ditemui dalam panjang yang ditentukan, substr( ) menggunakan kedudukan ini sebagai titik akhir petikan, memastikan petikan berakhir pada sempadan perkataan terdekat.
  • Jika tiada aksara ruang putih ditemui dalam panjang yang ditentukan, substr() akan mengembalikan keseluruhan subrentetan sehingga ke panjang yang ditentukan.

Contoh:

Pertimbangkan rentetan berikut:

$body = "Lorem ipsum dolor sit amet, consectetur adipiscing elit.";

Menggunakan panggilan substr() yang diubah suai, kita boleh ekstrak sebahagian daripada rentetan yang berakhir pada sempadan perkataan:

$excerpt = substr($body, 0, strpos($body, ' ', 260));

Output:

"Lorem ipsum dolor sit amet"

Seperti yang anda lihat, petikan berakhir pada yang terdekat sempadan perkataan, memberikan hasil yang lebih semula jadi dan lengkap.

Atas ialah kandungan terperinci Bagaimana untuk Memastikan Fungsi substr PHP Berakhir pada Perkataan, Bukan Aksara?. 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