Nasıl sadece bir önizleme (PHP) gibi bir yazının ilk x karakterleri göstermek?

4 Cevap php

Ben size bir önizleme olarak bir yazının sadece ilk "x" karakterleri göstermek ne kadar merak ediyordum. Sıralama Onlar sorulardan orada listesini göstermek ne StackOverflow ne gibi.

The quick brown fox jumps over the lazy dog

gider

The quick brown fox jumps...

Ben ortada bir kelime bölmek istemiyorum. Ben patlayabilir, her boşlukta işlevi bölme kadar patlayabilir ("", $ yazı) düşünüyordum, ama ben başka bir yol ya da orada değildi eğer çok emin değildi. Teşekkürler

4 Cevap

Deneyin:

preg_match('/^.{0,30}(?:.*?)\b/iu', $text, $matches);

en çok 30 karakter eşleşmesi, hangi sonra bir sonraki en yakın kelime-Kopma kırmak

strpos() ile kullanmak bir uygun bir yere yerleştirilmiş yer bulmak, ve substr() orada dize dilim için kullanmak ofset.

Eğer wordwrap deneyebilirsiniz

$str = "The quick brown fox jumps over the lazy dog";
$x = 14;
$newtext = wordwrap($str, $x);
$s  = explode("\n",$newtext,2);
print $s[0];

NB: $ x 8 söylemek ise, çıktı "", "hızlı" olmayacaktır

Sen de patlayabilir kullanabilirsiniz.

$str = "The quick brown fox jumps over the lazy dog";
$s = explode(" ",$str);
$x=14;
$final="";
foreach ($s as $k){
    if ( strlen($final) <= $x ){
        $final.="$k ";
    }else{ break; }
}
print "-> $final\n";

strpos (http://www.php.net/strpos) ne gerek verecektir. Bu fonksiyon, sana ihtiyacın olanı vermelidir.

function getPreview($text, $minimumLength=60){
     return substr($text,0,strpos($text,' ',$minimumLength)) . '...';
}

Note: I haven't tested that function