[PHP] bepaalde lijn zoeken uit bestand

Pagina: 1
Acties:

  • StratoFarmer
  • Registratie: April 2000
  • Laatst online: 04-09 21:10
Ik heb nu dit gemaakt, omdat ik uit een html bestand een bepaald stukkie text wil quoten. Het lijkt me handig om iig de lijn na een bepaalde lijn met een speciale tag te nemen.

voorbeeld van hoe de html file zou kunnen zijn:
code:
1
2
3
4
5
6
een header regel ofzo...
<!--- begin --->
hier staat de belangrijke regel
<br>
<br>
dit is de laatste regel

het script:
PHP:
1
2
3
4
5
6
7
8
9
<?
$fp = fopen('hetbestand.html', "r");
$size = filesize('hetbestand.html');

do { $text = fgets($fp, $size);
} while (!feof ($fp) &amp;&amp; $text != '<!--- begin --->');

echo $text;
?>

Nu krijg ik als output alleen maar de laatste regel...natuurlijk omdat feof dan waar is.
Wat gaat er nou verkeerd? :?

Mijn plekkie + Sympathisant van 'GoT voor Behoud der Nederlandsche Taal' [GvBdNT]


  • marcusk
  • Registratie: Februari 2001
  • Laatst online: 26-09-2023
't is denk ik makkelijker om de file()-functie te gebruiken. daarmee kun je het bestand per regel inlezen in een array.

zie http://www.php.net/manual/en/function.file.php

Verwijderd

De fout is dat er pas iets geprint wordt op het moment dat eof waar is.

  • StratoFarmer
  • Registratie: April 2000
  • Laatst online: 04-09 21:10
Op donderdag 18 oktober 2001 21:44 schreef joska het volgende:
De fout is dat er pas iets geprint wordt op het moment dat eof waar is.
jah, of als die regel dus gelijk is aan <!--- begin --->
althans, dat is de bedoeling... :P

die file functie wil ik ff niet gebruiken, dit is voor mij handiger...als het werkt. ;)

Mijn plekkie + Sympathisant van 'GoT voor Behoud der Nederlandsche Taal' [GvBdNT]


  • marcusk
  • Registratie: Februari 2001
  • Laatst online: 26-09-2023
Op donderdag 18 oktober 2001 21:50 schreef StratoFarmer het volgende:
jah, of als die regel dus gelijk is aan <!--- begin --->
althans, dat is de bedoeling... :P

die file functie wil ik ff niet gebruiken, dit is voor mij handiger...als het werkt. ;)
tuurlijk werkt het niet. $text wordt gewoon nooit gelijk aan '<!-- begin -->'. je kunt hoogstens kijken of het in de string staat, maar daar heb je erg weinig aan.

(met file() zou dit erg makkelijk zijn, maar goed, als jij zegt dat het niet handig is...)

  • StratoFarmer
  • Registratie: April 2000
  • Laatst online: 04-09 21:10
Op donderdag 18 oktober 2001 21:56 schreef marcusk het volgende:

[..]

tuurlijk werkt het niet. $text wordt gewoon nooit gelijk aan '<!-- begin -->'. je kunt hoogstens kijken of het in de string staat, maar daar heb je erg weinig aan.
Waarom niet? die tag is het enige wat op die regel staat!
dat kan toch dan? :?

Mijn plekkie + Sympathisant van 'GoT voor Behoud der Nederlandsche Taal' [GvBdNT]


  • marcusk
  • Registratie: Februari 2001
  • Laatst online: 26-09-2023
Op donderdag 18 oktober 2001 22:01 schreef StratoFarmer het volgende:

[..]

Waarom niet? die tag is het enige wat op die regel staat!
dat kan toch dan? :?
je hebt gelijk. ik wist niet dat fgets ook bij een newline stopt met lezen.

  • marcusk
  • Registratie: Februari 2001
  • Laatst online: 26-09-2023
dit werkt wel:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
    $fp = fopen('bla.bla', 'r');
    $size = filesize('bla.bla');
    
    while (!feof($fp))
    {
        $text = fgets($fp, $size);
        if (strpos($text, '<!--- begin --->') !== false) break;
    }

    $text = fgets($fp, $size);
    echo $text; 
?>

(do-while is lelijk ;))

  • StratoFarmer
  • Registratie: April 2000
  • Laatst online: 04-09 21:10
Op donderdag 18 oktober 2001 22:28 schreef marcusk het volgende:
dit werkt wel:
code:
1
<? ... ?>

(do-while is lelijk ;))
neej, break is mooi...

maaruh, dit script levert hetzelfde probleem op... :?
vaaag, werkt het zeker weten bij jou wel?

Mijn plekkie + Sympathisant van 'GoT voor Behoud der Nederlandsche Taal' [GvBdNT]


  • marcusk
  • Registratie: Februari 2001
  • Laatst online: 26-09-2023
break is mooi ja ! :)

jepz, bij mij werkt het. 'hier staat de belangrijke regel' zegt ie.

  • StratoFarmer
  • Registratie: April 2000
  • Laatst online: 04-09 21:10
Op donderdag 18 oktober 2001 22:49 schreef marcusk het volgende:
break is mooi ja ! :)

jepz, bij mij werkt het. 'hier staat de belangrijke regel' zegt ie.
hoow, ok oeps. Bij mij werktie ook.
tnx, nou kan ik weer ergens anders mijn hoofd over breaken.

Mijn plekkie + Sympathisant van 'GoT voor Behoud der Nederlandsche Taal' [GvBdNT]

Pagina: 1