woord en zin afbreken met extra funtie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Michel D

Michel D

24/12/2010 00:21:29
Quote Anchor link
Ik heb onderstaande functie code gevonden om in php een zin en woord af te breken of bewerken die prima werkt maar omdat ik veel tekst in kleinere vakken kwijt wil wil ik hier een functie aan toevoegen zodat rekening houd met de lengte van de zin hij (rekening houdend met de lengte van het laatste gebruikte woord) Hij zou dan na een bepaald aantal tekens automatisch een return (br />) moeten geven, heb al wat gepuzzeld maar het werkt niet echt. kan toch nooit zo moeilijk zijn ....wie helpt mij ???

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
function afbreken($string,$lengte_woord,$lengte_string)
{
    $wijzigingen = true;
    while($wijzigingen)
    {
        $wijzigingen = false;
        $woorden = explode(' ',$string);
          
        for ($i=0; $i < count($woorden); $i++)
        {
            if (strlen($woorden[$i])>$lengte_woord)
            {
                $woorden[$i] = substr($woorden[$i],0,$lengte_woord).' '.substr($woorden[$i], $lengte_woord, strlen($woorden[$i]) - $lengte_woord);
                $wijzigingen = true;
            }
            $string = implode(' ',$woorden);
        }
    }
    if(strlen($string) > $lengte_string)
    {          
        $z_spatie = substr($string, 0, $lengte_string);
        $l_spatie = strrpos($z_spatie, ' ');        
        return substr($z_spatie, 0, $l_spatie)." ...";
    }
    else {
        return $string;
    }
}
Gewijzigd op 24/12/2010 00:24:55 door Michel D
 
PHP hulp

PHP hulp

03/12/2024 18:30:19
 
Bas Cost Budde

Bas Cost Budde

24/12/2010 01:29:02
Quote Anchor link
Helpt de functie wordwrap() je?
 
Joey Drieling

Joey Drieling

24/12/2010 07:02:32
Quote Anchor link
Waarom met php kan gewoon met css.
 
The Ultimate

The Ultimate

24/12/2010 08:11:42
Quote Anchor link
Joey Drieling op 24/12/2010 07:02:32:
Waarom met php kan gewoon met css.
Kun je dit uitleggen? En geef eens een voorbeeld!
 
Kris Peeters

Kris Peeters

24/12/2010 10:29:52
Quote Anchor link
Wat je met css wel kan doen, is zoeken naar lettertypes met constante breedte.
Google "css fixed width font"

Dan komt dat mooi in een rechthoekige blok.

Van waar komt die funtie?
Werkt die?
Staat daar documentatie bij?
 
Wouter J

Wouter J

24/12/2010 11:18:48
Quote Anchor link
The Ultimate:
Kun je dit uitleggen? En geef eens een voorbeeld!

Er is een nieuwe CSS3 functie word-wrap. Dit werk helaas nog niet in elk browser.
 
Joakim Broden

Joakim Broden

24/12/2010 11:59:05
Quote Anchor link
Ik snap nou niet wat je wilt. Wil je nou dat woorden word afgemaakt met ... (dus 1 regel en als regel langer is komt er ... achter) (dit is dus met php mogelijke) Of wil je dat hij dan naar de volgende regel gaat (dit is dus met CSS mogelijk).
 
Michel D

Michel D

24/12/2010 21:53:39
Quote Anchor link
Dit is dus het probleem:
De tekst van het linkervak loopt als het woord iets te lang is toch net nog over in het rechter (tekst komt uit database)

Afbeelding

tekst blijft niet netjes in zijn div box met de volgende code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<div id="content">
<div id="actueel">
<ul id="menu1">
<br /><br />
<br />
<br />
<?php
// STUK PHP CODE UITLEZEN DATABASE
?>

</ul></div>


CSS:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#content {
    width: 956px;
    height: 800px;
    margin: 0 auto 0;
    padding: 20px;
    background-image: url(../achtergrond/midden.jpg);
    background-repeat: no-repeat;
    background-position: -9px;
    background-position: center -9px;
}
#actueel {
    position:relative;
    left: 748px;
    height: 180px;
    width: 280px;
    text-align: left;
    top: 157px;
    color: #FFF;
    font-size: 10px;
}

#menu1 li {
    display:inline;
}


#menu1 a:hover .text {
    display:block;
    position:absolute;
    top:0px;
    left:-166px;
    color:#000000;
    font-size:12px;
    height:196px;
    width: 197px;
    text-align: left;
    font-family: Georgia, "Times New Roman", Times, serif;
    background-image: url(../achtergrond/popup.jpg);
    background-repeat: no-repeat;
    padding-top: 0px;
    padding-right: 4px;
    padding-bottom: 4px;
    padding-left: 8px;
}
Gewijzigd op 24/12/2010 21:54:55 door Michel D
 
Gerhard l

gerhard l

24/12/2010 22:33:38
Quote Anchor link
volgens mij met een max-width in css zou de tekst nooit buiten de div komen, alleen woorden die breder zijn als je div vallen er dan buiten
 
Pim -

Pim -

24/12/2010 22:35:01
Quote Anchor link
Dit is theoretisch onmogelijk, omdat PHP je fonts niet kan (of gaat) renderen en dus nooit de regellengte kan weten.

Jou probleem moet je idd met CSS oplossen.
 
Michel D

Michel D

24/12/2010 22:53:19
Quote Anchor link
in css een max-width gebruikt en dit werkt inderdaad.
Case Solved !!!

Bedankt allemaal !!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.