Hello Anders, fyi: \n is LF only (ASCII 10), \r is CR only (ASCII 13), Win newline is CRLF or \r\n and linux/unix newline is \n. LFCR is not a valid newline, so maybe this is the trouble. Wild guess: trim trims spaces, tabs and any kind of newline (so called white space) but no standalone CRs. HTH -- Sven > -----Ursprüngliche Nachricht----- > Von: Svensson, B.A.T. (HKG) [SMTP:B.A.T.Svensson@lumc.nl] > Gesendet am: Dienstag, 16. Dezember 2003 09:35 > An: 'Frank M. Kromann ' > Cc: ''php-windows@lists.php.net' ' > Betreff: RE: Inconsistent php sematics witrh trim() ... or can't trim() handle assignment with same variable? > > I wish I could say the same about my code, but your > remark is still fruitfull from some points of view: > > 1) It does work in your special case, but not with me. > 2) It does not tell anything about my case. > 3) It does tell - me - something about my case! > > Conclusion: I need to run some few test suits > today to find out what's really going on here. > > In addition I can tell that my file consist of NL as CR+LF, > or if it was the otherway around (LF+CR) - I never seams to > be able to remember the order. ;) According to 3) your NL (\n) > might encode different: either CR or LF only(?). On the other > hand trim() does acutally remove the NL when called as in the > second code example, so it can't just be the simple fact that > it does remove one, and only one, of the NL characters from > the string. > > It might be an idea to investigte the input/output relation > with trim() in order to find out weather any of CR or LF (or > both) is left in the output string after trim() been applied. > > The major point is thou that I do experience that trim() have > two different kind of behaviour depending on the way I call > trim(), so the question(s) is(are): what is the scope of this > behavior, and why does it happend (to me;)? > > I'll try to come up with an answer on this today. > > > //Anders - who never been writing php code before. ;) > > > -----Original Message----- > From: Frank M. Kromann > To: Svensson, B.A.T. (HKG) > Cc: 'php-windows@lists.php.net' > Sent: 2003-12-16 07:20 > Subject: Re: Inconsistent php sematics witrh trim() ... or can't > trim() handle assignment with same variable? > > I can't see a promlem with the trim() function. > > Try this: > > <?php > > $a = " test\n"; > echo "***$a***"; > $a = trim($a); > echo "***$a***"; > ?> > > output: > > *** test > ******test*** > > I have tested with both php4 and php5 from cvs. > > - Frank > > > Just ran into this annoying thing today: > > > > > > Why does this /NOT/ work to remove NL's: > > > > $AccNr = fgets($fp); > > while ( !feof($fp) ) { > > > > $AccNr = trim($AccNr); /// trim() DOES NOT WORK HERE > > $InsertStr = "insert into $UpLoadTable values ('$AccNr')"; > > print "<pre>$i: Inserting: $InsertStr </pre>"; > > ob_flush(); > > mssql_query($InsertStr); > > > > $AccNr = fgets($fp); > > } > > > > while this works just fine to remove NL's: > > > > $AccNR = trim( fgets($fp) ); // trim WORKS JUST FINE HERE > > while ( !feof($fp) ) { > > > > $InsertStr = "insert into $UpLoadTable values ('$AccNr')"; > > print "<pre>$i: Inserting: $InsertStr </pre>"; > > ob_flush(); > > mssql_query($InsertStr); > > > > $AccNr = trim( fgets($fp) ); // trim WORKS JUST FINE HERE > > > > } > > > > -- > > PHP Windows Mailing List (http://www.php.net/) > > To unsubscribe, visit: http://www.php.net/unsub.php > > > > -- > PHP Windows Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php -- PHP Windows Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php