Woorden in string inkorten

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Niels

Niels

21/06/2007 19:55:00
Quote Anchor link
Hoi,

Ik heb een probleem. Ik heb een scriptje geschreven waar ik 'te' lange woorden wil verkorten. Het ziet er als volgt uit:

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
<?php

$bericht_array
= explode(" ", $bericht);
$aantal_woorden = count($bericht_array);
                
$max_tekens_woord = 20;
$i = 0;
                
while($i > $aantal_woorden){
$lengte_woord = strlen($bericht_array[$i]);

if($lengte_woord > $max_tekens_woord){
    $bericht_array[$i] = substr($bericht_array[$i], 0, $max_tekens_woord);
}

$i++;
}

                
$bericht = implode(" ", $bericht_array);

?>


Het geeft geen fouten, maar het werkt ook niet. Heeft iemand een idee wat het probleem is?

Alvast bedankt!
Gewijzigd op 01/01/1970 01:00:00 door Niels
 
PHP hulp

PHP hulp

28/03/2024 14:42:38
 
Danny Roelofs

Danny Roelofs

21/06/2007 20:08:00
Quote Anchor link
Het eerste wat mij opvalt is een typo op regel 12

if(lengte_woord)
 
Niels

Niels

21/06/2007 20:12:00
Quote Anchor link
Ja, klopt. Heb hem eruit gehaald. Maar het probleem doet zich nog steeds voor. Meer suggesties?
 
GaMer B

GaMer B

21/06/2007 20:18:00
Quote Anchor link
Wat voor een resultaat wil je nou behalen, want dat snap ik nog niet helemaal. Misschien is er een ander alternatief..
 
Danny Roelofs

Danny Roelofs

21/06/2007 20:29:00
Quote Anchor link
Je while lus en hoe je de $i variabele verder gebruikt is ook niet helemaal zoals je zou verwachten.

Voordat je verder gaat, verdiep je eens in de methode foreach:

1. foreach (array_expression as $value)

2. foreach (array_expression as $key => $value)


Ofwel:

foreach ($bericht_array as $bericht)
{
echo $bericht.'<br>';
}
 
Niels

Niels

21/06/2007 20:34:00
Quote Anchor link
Het resultaat dat ik wil behalen is dat ik 'te' lange woorden in een string korter maak. Voorbeeld:

$string = "heeeeeeeeeeeeeeeeeeeel lang woord";

na mn scriptje:

$string = "heeeeee lang woord";
..

ik ga dit gebruiken om nieuwsberichten weer te geven. Maar als daar een url instaat wordt hij te breed voor het kader.

Dat wil ik bereiken
 
GaMer B

GaMer B

21/06/2007 20:52:00
Quote Anchor link
Ik denk dat je dan wordwrap() kunt gebruiken..
 
Niels

Niels

21/06/2007 20:59:00
Quote Anchor link
Haha, zo simpel is het toch. Nooit geweten dat die functie bestond. Bedankt!
 



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.