Kijken of bepaalde woorden in een variabel zitten
Aangezien ik de post eerst opvang in een variabel kan je daar het beste van uitgaan.
dus:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
$variabel = 'even een klein voorbeeldje variabel met gewoon wat woorden erin';
// nu moet ik dus kijken of er bepaalde woorden inzitten.
$findme = "variabel met";
$pos = strpos($variabel, $findme);
if ($pos === false) {
echo 'zit er niet in';
} else {
echo 'zit er wel in';
}
// nu moet ik dus kijken of er bepaalde woorden inzitten.
$findme = "variabel met";
$pos = strpos($variabel, $findme);
if ($pos === false) {
echo 'zit er niet in';
} else {
echo 'zit er wel in';
}
Is wat ik gevonden had maar aangezien ik moet controleren op een xx aantal woorden vroeg ik me af of er een bepaalde manier is om in één keer te kijken of bepaalde woorden gewoon in de variabel zitten.
eregi()
Kan je niet beter met een array werken steeds een woord daar uit pakken en controleren of het voorkomt?
Jan Koehoorn schreef op 25.01.2008 16:03:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
$woordje = array('hallo','daar','array');
foreach ($woordje as $woord) {
if (strpos ($keimeno, $woord)) {
// gevonden
echo 'found';
}
}
}
// resultaat == foundfoundfound
foreach ($woordje as $woord) {
if (strpos ($keimeno, $woord)) {
// gevonden
echo 'found';
}
}
}
// resultaat == foundfoundfound
Het heeft hem 3 keer gevonden maar het moet juist gezien worden als 1 keer, aangezien de woorden op verschillende posities staan in de variabel lukt het op deze manier niet.
Andere ideeën?
Dan zet je toch een break; na de eerste treffer?
Het lijkt me dat ik moet tellen hoeveel woorden er in de array zitten en voor elke gevonden woord een variabel increased en als die variabel kleiner is dan het aantal woorden dan een break.
Het enige wat ik zo kon vinden was een manier om aantal keer een bepaald woord in een string voor komt. En de variabel zo laten increasen in php ben ik ook nog niet machtig.
Edit: count()
Gewijzigd op 01/01/1970 01:00:00 door Folkert
GaMer13 schreef op 25.01.2008 16:53:
Doe het dan zo:
Code (php)
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
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
<?php
$woordje = array('hallo','daar','array');
foreach ($woordje as $woord) {
if (strpos ($keimeno, $woord)) {
// gevonden
$found = true;
} else {
$found = false;
}
}
if($found) {
echo 'Found';
} else {
echo 'No match';
}
[/code][/quote]
Als de laatste waarde die in de variabel gevoden word dan is het found? Geen rekening houden met de anderen?
________________________________________________
Ik heb nu wel een if statement die het doet, en als die gelijk is met de count van de array zal ik het script laten uitvoeren.
Bedankt voor de hulp
$woordje = array('hallo','daar','array');
foreach ($woordje as $woord) {
if (strpos ($keimeno, $woord)) {
// gevonden
$found = true;
} else {
$found = false;
}
}
if($found) {
echo 'Found';
} else {
echo 'No match';
}
[/code][/quote]
Als de laatste waarde die in de variabel gevoden word dan is het found? Geen rekening houden met de anderen?
________________________________________________
Ik heb nu wel een if statement die het doet, en als die gelijk is met de count van de array zal ik het script laten uitvoeren.
Bedankt voor de hulp