Wordpress tarzı özleri oluşturma

2 Cevap php

Ben çeşitli kamu RSS beslemeleri aşağı çeker bir site üzerinde çalışıyorum. Ben bir HTMLless, yem girdisinin kısa açıklamasını göstermek istiyorum.

Yemlerin bazıları güzel alıntı ile geliyor ama bir sürü yüzden sol tam içerikten kendi yapıyorum bilmiyorum.

Yani metin bir blok almak ve çizgilerin sadece ilk çift için aşağı dilim iyi / hızlı / kolay yolu nedir?

2 Cevap

Bu fonksiyon, belirli bir kelime sınırı metin bloğunu azaltacaktır, bu nedenle eğer alışkanlık kapalı bölümü yolu bir kelime kesti:

  function limit_text($text, $limit) {
      if (strlen($text) > $limit) {
          $words = str_word_count($text, 2);
          $pos = array_keys($words);
          $text = substr($text, 0, $pos[$limit]) . '...';
      }
      return $text;
    }

Örnek kullanım:

echo limit_text('Hello here is a long sentence blah blah blah blah blah hahahaha haha haaaaaa', 5);

Çıkışlar:

Hello here is a long ...

Bu bir size biraz daha fazla esneklik verir

function string_limiter($string, $limit = 50, $end_char = '…')
{
	if (trim($string) == '')
	{
		return $string;
	}

	preg_match('/^\s*+(?:\S++\s*+){1,'.(int) $limit.'}/', $string, $matches);

	if (strlen($string) == strlen($matches[0]))
	{
		$end_char = '';
	}

	return rtrim($matches[0]).$end_char;
}

Onu aramak için nasıl örnek

$str = "Cras id ipsum accumsan dolor pulvinar sollicitudin et eu augue. Pellentesque sem metus, imperdiet tempor fringilla quis, convallis quis nisl. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Etiam eget lorem ligula. Sed congue odio enim. Etiam aliquet condimentum pellentesque. Sed urna velit, egestas et dictum non, pulvinar quis dui! Cras blandit porttitor tortor nec eleifend. Nullam porttitor scelerisque nunc, id porttitor orci lobortis nec. Curabitur vestibulum molestie purus, eget convallis dolor luctus eu! Morbi id felis eu eros mattis congue non nec nisl.";

echo string_limiter($str, 20);

Böyle bir şey elde edeceksiniz:

Cras id ipsum accumsan dolor pulvinar sollicitudin et eu augue. Pellentesque sem metus, imperdiet tempor fringilla quis, convallis quis nisl.…