lohelle Skrevet 21. november 2008 Skrevet 21. november 2008 Jeg prøver å bruke simplexml_load_file() til å lese inn noen nyheter fra en XML-fil Dette fungerer egentlig ganske bra, med unntak av at noe av teksten ligger over flere linjer. Jeg klarer å få med all data som jeg skal, men jeg klarer ikke å få gjort om innholdet i en variabel til en linje i stende for flere. $hovedsaker = "url til xml"; $xml_hovedsaker = simplexml_load_file($hovedsaker); foreach( $xml_hovedsaker->article as $article_hovedsaker ) { utf8_decode($article_hovedsaker->text); echo $article_hovedsaker->text."\n"; } Her er relevant kode. Problemet er som nevnt at jeg får ut hver enkelt nyhet på 3-5 linjer, mens jeg vil ha hver enkelt nyhet på en linje. Jeg kan såklart skrive det til en fil og lese inn igjen hver enkelt linje, men det må da vel være en måte å lese ut hver enkelt linje i denne variabelen (er vel en heredoc variabel??) og legge disse på samme linje? Noen tips til meg?
Edorph Skrevet 22. november 2008 Skrevet 22. november 2008 Hmm, kan du ikke bare kjøre en str_replace på variablen hvor du bytter alle '\n' med ' '? Evt alle <br/> hvis det er det som gjør at det blir flere linjer.
lohelle Skrevet 23. november 2008 Forfatter Skrevet 23. november 2008 Hmm, kan du ikke bare kjøre en str_replace på variablen hvor du bytter alle '\n' med ' '? Evt alle <br/> hvis det er det som gjør at det blir flere linjer. Har prøvd å str_replace'e både \n og \r osv, men ser ikke ut til at det hjelper med disse heredoc variablene.. Er det noen måte å se hvilke koder som ligger der egentlig? (der linjeskift blir vist som \n osv)
Edorph Skrevet 23. november 2008 Skrevet 23. november 2008 Hvorvidt du har brukt heredoc eller ei skal ikke ha noe å si for innholdet i strengen. Kanskje du har brukt str_replace('\n', '', $foo) istedet for str_replace("\n", '', $foo); ?
lohelle Skrevet 25. november 2008 Forfatter Skrevet 25. november 2008 Hvorvidt du har brukt heredoc eller ei skal ikke ha noe å si for innholdet i strengen.Kanskje du har brukt str_replace('\n', '', $foo) istedet for str_replace("\n", '', $foo); ? vel.. litt flaut, men løsningen var selvfølgelig så lett som den skulle være.. jeg trodde det var nok med: str_replace("\n", '', $article_hovedsaker->text); men jeg måtte selvsagt bruke: $article_hovedsaker->text = str_replace("\n", '', $article_hovedsaker->text); Skjønner ikke hva jeg tenkte på..
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå