Hướng dẫn php truncate string if too long - php cắt ngắn chuỗi nếu quá dài
Bạn cũng có thể đạt được trang trí mong muốn theo cách này: Show
Where:
Điều này sẽ trở lại Lưu ý rằng 10 là độ dài của chuỗi bị cắt + chuỗi được thêm vào! Tài liệu: http://php.net/manual/en/function.mb-strimwidth.php Để tránh các từ ngắn: Trong trường hợp trình bày các trích đoạn văn bản, có lẽ nên tránh một từ nên tránh. Nếu không có yêu cầu khó khăn về độ dài của văn bản bị cắt ngắn, ngoài
Trong trường hợp này, Ví dụ về mã trực tiếp: http://sandbox.onlinephpfunces.com/code/25484a8b687d1f5ad93f62082b6379662a6b4713 Một vấn đề phổ biến khi tạo các trang web động (trong đó nội dung có nguồn gốc từ cơ sở dữ liệu, hệ thống quản lý nội dung hoặc nguồn bên ngoài như nguồn cấp RSS) là văn bản đầu vào có thể quá dài và khiến bố cục trang 'ngắt'. Một giải pháp là cắt ngắn văn bản để nó phù hợp với trang. Điều này nghe có vẻ đơn giản, nhưng thường thì kết quả không như mong đợi do các từ và câu bị cắt ở những điểm không phù hợp. Giới hạn hoặc cắt các chuỗi bằng cách sử dụng PHPĐây là một chức năng đơn giản để tránh những cạm bẫy thông thường và mang lại sự linh hoạt trong định dạng: 0Đối với các ví dụ dưới đây, chúng tôi sử dụng đoạn sau bao gồm bốn câu có độ dài khác nhau: 1Cắt ngắn vào giờ nghỉHành động mặc định là phá vỡ trong lần đầu tiên "." Sau $ giới hạn ký tự và sau đó pad với "...". Điều đó có nghĩa là đầu ra sẽ luôn dài hơn các ký tự $ giới hạn, nhưng chỉ xa như ký tự $ break tiếp theo. Xa hơn nữa, bạn có thể tìm thấy một hàm trả về một chuỗi luôn ngắn hơn $ giới hạn.after $limit characters and then pad with "...". That means that the output will always be longer than $limit characters, but only as far as the next $break character. Further down the page you can find a function that returns a string that is always shorter than $limit. 2Thế giới rộng rãi. Khi người bình thường của bạn trên đường phố đề cập đến Internet, họ thường nghĩ về World Wide Web. Web về cơ bản là một loạt các tài liệu được chia sẻ với thế giới được viết bằng ngôn ngữ mã hóa có tên là Ngôn ngữ đánh dấu HYPER hoặc HTML. Khi bạn thấy một trang web, như thế này, bạn đã tải xuống một tài liệu từ một máy tính khác đã được thiết lập như một máy chủ web. (không bị cắt ngắn) 3Thế giới rộng rãi. Khi người bình thường của bạn trên đường phố đề cập đến Internet, họ thường nghĩ về World Wide Web. Web về cơ bản là một loạt các tài liệu được chia sẻ với thế giới được viết bằng ngôn ngữ mã hóa có tên là Ngôn ngữ đánh dấu siêu văn bản hoặc HTML ... 4Thế giới rộng rãi. Khi người bình thường của bạn trên đường phố đề cập đến Internet, họ thường nghĩ về World Wide Web ... Cắt ngắn khi phá vỡ từNếu văn bản của bạn bao gồm các câu dài hoặc bạn cần kiểm soát chính xác độ dài thì phá vỡ không gian có thể tốt hơn. Một số sự rõ ràng bị mất khi các câu bị phá vỡ, nhưng ít nhất các từ vẫn còn nguyên vẹn. 5Thế giới rộng rãi. Khi người bình thường của bạn trên đường phố đề cập đến Internet, họ thường nghĩ về World Wide Web. Web về cơ bản là một loạt các tài liệu được chia sẻ với thế giới được viết bằng ngôn ngữ mã hóa có tên là Ngôn ngữ đánh dấu HYPER hoặc HTML. Khi bạn thấy một trang web, như thế này ... 6Thế giới rộng rãi. Khi người bình thường của bạn trên đường phố đề cập đến Internet, họ thường nghĩ về World Wide Web. Web về cơ bản là một loạt các tài liệu được chia sẻ với thế giới được viết ... 7Thế giới rộng rãi. Khi người bình thường của bạn trên đường phố đề cập đến Internet, họ thường nghĩ ... Bạn sẽ nhận thấy rằng độ dài văn bản cuối cùng bây giờ gần với các ký tự $ giới hạn, điều này có ý nghĩa vì có rất nhiều không gian trong văn bản thông thường so với các thời kỳ. Cắt ngắn đến chiều dài tối đaNhư đã lưu ý trước đây, hàm được trình bày ở trên sẽ luôn trả về một chuỗi dài hơn một chút so với các ký tự giới hạn $, cho đến ký tự $ break tiếp theo. Đối với những người có yêu cầu chặt chẽ hơn, đây là một chức năng thay thế sẽ cắt văn bản thành ký tự $ break trước đó thay vì sau $ giới hạn:before rather than after $limit: 8Lưu ý rằng giá trị mặc định cho $ break đã thay đổi thành ký tự không gian. Sử dụng "." Nhân vật là điểm dừng bây giờ nguy hiểm vì chỉ có thể có một hoặc hai câu trong văn bản của bạn và bạn có thể kết thúc với rất ít từ còn lại. Ở đây bạn có thể thấy đầu ra của chức năng mới này: 9Thế giới rộng rãi. Khi người bình thường của bạn trên đường phố đề cập đến Internet, họ thường nghĩ về World Wide Web. Web về cơ bản là một loạt các tài liệu được chia sẻ với thế giới được viết bằng ngôn ngữ mã hóa có tên là Ngôn ngữ đánh dấu siêu văn bản hoặc HTML ... Hello World 0Thế giới rộng rãi. Khi người bình thường của bạn trên đường phố đề cập đến Internet, họ thường nghĩ về World Wide Web ... Hello World 1Thế giới trên toàn thế giới ... Cắt ngắn bằng lời nóiNếu bạn chỉ muốn cắt văn bản thành một số từ nhất định, thì bạn không cần bất kỳ hàm ưa thích nào, mã bên dưới sẽ thực hiện thủ thuật: Hello World 2Nói cách khác, khớp với tối đa 10 lần xuất hiện của 'một hoặc nhiều ký tự không phải là không gian theo sau là các ký tự khoảng trắng bằng không hoặc nhiều hơn': Thế giới rộng rãi. Khi người bình thường của bạn trên (10 từ) Để biết thêm thông tin về văn bản xử lý, gói văn bản để phù hợp với cột hoặc chia đều nội dung trên hai hoặc nhiều cột, hãy xem bài viết liên quan về gói từ. Một giải pháp thay thế đã được cung cấp bởi Bakaburg (xem Phản hồi). Đây là cùng một giải pháp được đóng gói thành một hàm:Bakaburg (see Feedback). Here is the same solution packaged into a function: Hello World 3Việc sử dụng phải khá đơn giản: Hello World 4Thế giới rộng rãi. Khi người bình thường của bạn trên ... Chắc chắn, chúng tôi còn lại chỉ với 10 từ đầu tiên của văn bản. Lưu ý rằng chúng tôi đã đặt các dấu phân cách mặc định cho Strtok thành một khoảng không gian hoặc ngắt dòng. Bạn có thể thêm các ký tự khác vào tập hợp này theo yêu cầu, nhưng không phải là biểu thức chính quy như trong giải pháp trước. Khôi phục thẻ trong HTML bị cắt ngắnRất nhiều người đã đặt câu hỏi về cách đối phó với các thẻ HTML trong văn bản bị cắt ngắn. Rõ ràng cách tiếp cận đơn giản nhất là xóa bất kỳ thẻ nào khỏi chuỗi để bị cắt ngắn, nhưng điều đó không phải lúc nào cũng đủ tốt cho các ứng dụng trong thế giới thực nơi định dạng là quan trọng. Hàm này chấp nhận một chuỗi chứa các thẻ HTML và sẽ cố gắng tự động đóng bất kỳ thẻ nào đã bị mở. Có một giả định ở đây rằng HTML có hiệu lực trước khi nó bị cắt ngắn, vì vậy tất cả các thẻ đã được mở và đóng theo thứ tự hợp lệ: Hello World 5Xin lưu ý: Chức năng này là thử nghiệm, vì vậy vui lòng sử dụng nó một cách thận trọng và đưa ra phản hồi bằng cách sử dụng liên kết phản hồi ở cuối trang. Nếu bạn đã tìm thấy một trường hợp nó không hoạt động, vui lòng cung cấp một ví dụ để chúng tôi có thể kiểm tra nó. This function is experimental so please use it with caution and give feedback using the Feedback link at the bottom of the page. If you've found a case where it doesn't work, please provide an example so we can check it out. Cả tập lệnh cắt ngắn cũng như hàm trên để khôi phục các thẻ HTML đều được thiết kế để xử lý văn bản có chứa các thẻ hình ảnh hoặc siêu liên kết. Chúng được thiết kế đơn giản để cắt các thẻ văn bản đơn giản và HTML mà không có bất kỳ thuộc tính nào. Để biết một giải pháp toàn diện hơn, hãy xem các liên kết dưới đây.plain text and HTML tags without any attributes. For a more comprehensive solution see the links below. Ví dụ làm việcBạn có thể sử dụng biểu mẫu bên dưới để xem cách thức hoạt động của hàm cắt ngắn (MyTrunCate) - với tùy chọn bổ sung để đóng bất kỳ thẻ HTML mở nào (hàm Restoretags). Người giới thiệu
< PHP Đăng bình luận hoặc câu hỏi của bạn |