vraagje over preg_replace
Als ik de array uitlees dan komt er achter elke OR te staan omdat ik meerdere id nummers wil selecteren uit m'n database.
Wat nu het probleem is dat de laatste OR weg moet, ik probeerde dit met preg_replace() maar dat lukt niet helemaal, ik kan wel alle OR weghalen maar ik wil alleen de laatste weghalen. (zie code hieronder)
Alvast bedankt voor jullie hulp.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$exploded = explode('_',$_GET['id']);
for($i = 0; $i <= 4; $i++){
$feed_sql .= 'feed_id ='. $exploded[$i].' OR ';
}
$feed_sql = preg_replace('/OR$/m','',$feed_sql);
?>
$exploded = explode('_',$_GET['id']);
for($i = 0; $i <= 4; $i++){
$feed_sql .= 'feed_id ='. $exploded[$i].' OR ';
}
$feed_sql = preg_replace('/OR$/m','',$feed_sql);
?>
de huidige output is:
feed_id =6 OR feed_id =89 OR feed_id =120 OR feed_id =2 OR feed_id =23 OR
Je kunt het probleem omdraaien: zet er altijd OR voor, behalve als $i gelijk is aan 0.
ach natuurlijk, waarom moeilijk maken als het makkelijk kan
Code (php)
Volgens mij is dit een slimmer en gemakkelijker oplossing.
Edit:
Is aangepast:
Als er maar 1 feed (id) wordt meegegeven, moet er ook geen OR komen.
Is aangepast:
Als er maar 1 feed (id) wordt meegegeven, moet er ook geen OR komen.
Gewijzigd op 01/01/1970 01:00:00 door Robert Deiman
Jan Koehoorn schreef op 11.12.2006 12:20:
Je kunt het probleem omdraaien: zet er altijd OR voor, behalve als $i gelijk is aan 0.
Is inderdaad ook een goede manier, had ik nog niet gelezen voor mijn post :S
kan ook maar dan moet je alsnog de $number_feeds - 1 doen omdat er wordt geteld vanaf 0.