// Funktion, der "klipper" en tekst over på det mest hensigtsmæssige sted (".", " ", )
function klip($tekst, $laengde = 50, $tolerance = 10) // $laengde og $tolerance kan udelades { $punktum = strpos(substr($tekst, $laengde-$tolerance, 2*$tolerance), "."); // position af punktum $mellemrum = strpos(substr($tekst, $laengde-$tolerance, 2*$tolerance), " "); // position af mellemrum $mere = "..."; // punktummer hvis mere tekst
if (strlen($tekst) <= $laengde + $tolerance) { $slut_pos = strlen($tekst); // slutposition = slut på tekst, da denne er kortere end $laengde og $tolerance $mere = ""; // ikke andet } elseif ($punktum !== false) { $slut_pos = $laengde-$tolerance+$punktum; // slutposition = punktum } elseif ($mellemrum !== false) { $slut_pos = $laengde-$tolerance+$mellemrum; // slutposition = mellemrum } else { $slut_pos = $laengde; // slutposition $laengde (ikke noget at gøre - skær ord over) }
Hej igen. Tak for de hurtige svar. Jeg er ikke så ferm til det her. Ved jensgram's løsning bliver siden blot blank i stedet og ved nielle's løsning kommer titlen frem som den plejer uden at forkorte den. Så jeg prøver lige at vise jer hele koden:
<? define(TEMPDIR,"news/admin/"); require(TEMPDIR."coreclass.php"); $aepublic=new CArticles(); $aepublic->PublicInitialize(); $aepublic->RequestVariables(); $date=date("d.m.Y"); $date=$aepublic->DateConversion($date,1); if (!$aepublic->offset) $aepublic->offset=0; if (!$aepublic->articlenumber) $aepublic->articlenumber=4; $aepublic->DBQuery("SELECT * FROM ".$aepublic->table[3]." "); //WHERE adate<='".$date."' AND status=1 $articlesfound=$aepublic->rowsnumber; $aepublic->DBQuery("SELECT * FROM ".$aepublic->table[3]." ORDER BY priority DESC, adate DESC, atime DESC LIMIT ".$aepublic->offset.",".$aepublic->articlenumber); //$aepublic->GetArchive($aepublic->articlenumber,0,$aepublic->sectionI D); while ($aepublic->DBGetRow()) { $aepublic->GetArticle(); echo ''; $aepublic->GetArticleDate(); echo ' - '; if ($aepublic->cleanurls) { if ($aepublic->filename) echo '<a href="',$aepublic->GetArticleFilename(),'">'; else echo '<a href="news/showarticle.php?articleID=',$aepublic->GetArticleID(),'">'; } else echo '<a href="news/showarticle.php?articleID=',$aepublic->GetArticleID(),'">';
Hmmm ... nu var det jo ikke min løsning, der endte med at blive brugt ;)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.