[php] ^M in files bij het schrijven van POST data *

Pagina: 1
Acties:

Onderwerpen


Verwijderd

Topicstarter
Hoi allemaal

Ben bezig met het wegschrijven van bestanden in tmp dir onder linux. Ik zal even uitleggen hoe ik dat doe
Ik open /etc/hosts/ in een form die moet ik kunnen wijzigen en de wijzigingen opslaan in tmp file die ik daarna weer kopier naar /etc/hosts
Alleen het probleem is dat in tmp file ^M aan de eind van de regels komt staan. Weet iemand hoe ik die eruit krijg.
Voor het wegschrijven gebruik ik fwrite.

Alvast bedankt

  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09 14:42
PHP neem ik aan? En heb je er ook last van als hij niet in tmp wegschrijft :?

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

Zou wel handig zijn als we wisten over welke programmeertaal e.d. het gaat, denk je ook niet?

In geval van PHP icm een webserver: de data die gepost wordt door je browser gebruikt \r\n als newline tekens. Linux gebruikt echter alleen de \n. De ^M die je ziet is de weergave van een \r. Die moet je er dus uitfilteren

[ Voor 75% gewijzigd door .oisyn op 18-09-2003 15:50 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • _the_crow_
  • Registratie: September 2000
  • Laatst online: 30-03 14:35

_the_crow_

Rare vogel

Linux kent toch geen CarriageReturn? Of klets ik nou onzin?

Schrödingers cat: In this case there are three determinate states the cat could be in: these being Alive, Dead, and Bloody Furious.


  • bigben04
  • Registratie: December 2001
  • Laatst online: 30-08 20:47
Ik gok dat je ergens '\r\n' moet veranderen in '\n', aangezien *NIX andere regeleindes heeft dan Windows.

edit:
Jaja, snel editen he .oisyn ;)

[ Voor 28% gewijzigd door bigben04 op 18-09-2003 15:52 ]


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 06-09 00:37

curry684

left part of the evil twins

Linux kent toch geen CarriageReturn? Of klets ik nou onzin?
Ja :) De CR oftewel ASCII-13 is officieel onderdeel van alle wereldwijde standaarden op dit gebied.

Professionele website nodig?


  • The Eagle
  • Registratie: Januari 2002
  • Laatst online: 08:24

The Eagle

I wear my sunglasses at night

Gewoon lekker VI gebruiken >:)

Al is het nieuws nog zo slecht, het wordt leuker als je het op zijn Brabants zegt :)


Verwijderd

Topicstarter
Sorry dat ik vergeten was te zeggen dat ik php gebruik

  • _the_crow_
  • Registratie: September 2000
  • Laatst online: 30-03 14:35

_the_crow_

Rare vogel

curry684 schreef op 18 September 2003 @ 15:51:
Ja :) De CR oftewel ASCII-13 is officieel onderdeel van alle wereldwijde standaarden op dit gebied.
Ik dacht dat linux de CR niet kon weergeven en daarom ASCII-13 als een tekentje weergaf.

Schrödingers cat: In this case there are three determinate states the cat could be in: these being Alive, Dead, and Bloody Furious.


Verwijderd

Topicstarter
Het werk heb er met ereg_replace \r eruit gefilterd

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

_the_crow_ schreef op 18 September 2003 @ 15:53:
[...]

Ik dacht dat linux de CR niet kon weergeven en daarom ASCII-13 als een tekentje weergaf.
je begrijpt het verkeerd. Linux snapt prima wat een \r is. Het is gewoon een character met teken 13. Elk OS dat ascii ondersteund snapt dat. Dat wil nog niet zeggen dat ze die gebruiken om aan te geven dat er op een nieuwe regel verder gegaan moet worden. Linux gebruikt daarvoor alleen de \n (ascii code 10). Windows gebruikt de \r\n combinatie, en de Mac gebruikt alleen de \r. Verder snappen ze alle drie wat een \r en een \n is. :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • MisterData
  • Registratie: September 2001
  • Laatst online: 29-08 20:29
Verwijderd schreef op 18 September 2003 @ 15:58:
Het werk heb er met ereg_replace \r eruit gefilterd
Kun je niet beter str_replace gebruiken? das stukken sneller denk ik (regexen zijn over het algemeen erg traag) :)

  • zeroxcool
  • Registratie: Januari 2001
  • Laatst online: 04-09 19:14
Je kan ook het commando dos2unix filename gebruiken.

zeroxcool.net - curity.eu


  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
als je dos2unix geinstalleerd hebt. Het is niet standaard...
(in freebsd iig)

[ Voor 14% gewijzigd door Grijze Vos op 18-09-2003 16:47 ]

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


  • Soultaker
  • Registratie: September 2000
  • Laatst online: 03:13
En met col kan het natuurlijk ook, al lijkt de oplossing van de topic starter, het verwijderen van de \r characters vanuit PHP, me ook gewoon geschikt.
Pagina: 1