Toon posts:

[PHP] fscanf() probleempje

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hi, ik heb een probleem met fscanf() in PHP. Deze stopt namelijk met lezen als 't een whitespace heeft gevonden, maar dat wil ik niet. Ik wil twee vars, een 'id' (die heb ik al, geen probleem), en de ander moet de rest van de regel zijn waar ik de informatie uit vandaan haal.
PHP:
1
2
3
4
5
6
7
8
9
10
<?
$fl = fopen("list.txt", "r");
while ($info = fscanf($fl, "<!-- cid #%s -->%[a-zA-Z0-9,. ]")) {
        list ($catid, $rest) = $info;
        if ($catid == $dispcat) {
                echo "$rest";
        }
}
fclose($fl);
?>

Dit werkt dus helaas niet. Weet iemand hoe ik de rest van de regel in een string kan stoppen? In meerdere strings stoppen is geen optie, want die regel is dynamisch. Alvast bedankt.

Edit: Is er trouwens een regex dat alles doorlaat, zodat je niet a-zA-Z0-9 hoeft te typen, maar alleen bijv.
[ * ] (ignore die spaties, anders maakt topix er een bullet van)? Dat zou kunnen helpen namelijk. Heb eens een heleboel chars in die regex in m'n code gezet, en toen kwam er meer data in $rest.

Verwijderd

Topicstarter
Lamaar, probleem opgelost.

Verwijderd

zeg ook meteen wat het probleem is dan heeft een andere er wat aan...

jaja got is een Knowlegde db :)

Verwijderd

Topicstarter
Nou, zo'n beetje alle keyboard characters in m'n regex gepropt. Het is niet echt ideaal als er dan een
• bijvoorbeeld in de string staat, want dan slikt ie 't niet meer. :(

Verwijderd

Topicstarter
Eigenlijk is 't dus nog niet opgelost. Als iemand een betere oplossing heeft, laat het aub even weten. Thanks.