- shares
- Facebook Messenger
- Gmail
- Viber
- Skype
Trong bài hôm nay mình sẽ hướng dẫn các bạn giới hạn chuỗi trong php với số lượng ký tự được chỉ định. Để 3 chấm trong chuỗi đầu ra cho biết chuỗi này còn nhiều. Có nhiều hình thức hiển thị, ví dụ: để 3 chấm ở cuỗi chuỗi hoặc đặt ở giữa chuỗi giống như thế này.
Hiển thị giới hạn chuỗi dạng: abcde…eg
<?php function strMiddleReduceWordSensitive($string, $max = 50, $rep = '[...]') { $strlen = strlen($string); if ($strlen <= $max) return $string; $lengthtokeep=$max - strlen($rep); $start = 0; $end = 0; if (($lengthtokeep % 2) == 0) { $start = $lengthtokeep / 2; $end = $start; } else { $start = intval($lengthtokeep / 2)+2; $end = $start - 5; } $i = $start; $tmp_string = $string; while ($i < $strlen) { if (isset($tmp_string[$i]) and $tmp_string[$i] == ' ') { $tmp_string = mb_substr($tmp_string, 0, $i,'UTF-8') . $rep; $return = $tmp_string; } $i++; } $i = $end; $tmp_string = strrev ($string); while ($i < $strlen) { if (isset($tmp_string[$i]) and $tmp_string[$i] == ' ') { $tmp_string = mb_substr($tmp_string, 0, $i,'UTF-8'); $return .= strrev ($tmp_string); } $i++; } if(isset($return)) return $return; return mb_substr($string, 0, $start,'UTF-8') . $rep . mb_substr($string, - $end,'UTF-8'); } ?>
Hiển thị chuỗi với ký tự giới hạn, bạn gọi hàm strMiddleReduceWordSensitive
như dưới đây:
echo strMiddleReduceWordSensitive('cộng hòa xã hội chủ nghĩa việt nam độc lập tự do hạnh phúc',30,'...');
Kết quả:
cộng hòa xã hội...do hạnh phúc
Hiển thị giới hạn chuỗi dạng: abcde…
<?php function mysubstr($str,$limit=100){ if(strlen($str)<=$limit) return $str; return mb_substr($str,0,$limit-3,'UTF-8').'...'; } ?>
Cách dùng:
echo mysubstr('cong hoa xa hoi chu nghia',10);
Kết quả:
cong ho...
Nếu bạn thấy bài viết này hữu ích, hãy chia sẻ với bạn bè bằng cách nhấn nút chia sẻ ở bên dưới. Theo dõi chúng tôi trên Twitter và Facebook
- shares
- Facebook Messenger
- Gmail
- Viber
- Skype