On Tuesday 16 July 2002 22:35, Dave [Hawk-Systems] wrote: > >> $users[]=$newuser; > >> # adds the new user to the end of the above created users array > >> # then write the array to the file > >> $fd = fopen (".users", "w+"); > >> fwrite ($fd, join("\n",$users)); > >> fclose ($fd); > >> > >> the problem is after adding users, only the last user returns the user > >> name in the array, all the other users have an additional "/n" at the > >> end of them, which causes the check to barf. > > > >Well, if you RTFM, you'll know that file() "returns the file in an array > > ... with the newline still attached". So one possible solution is after > > using file(), loop through $users and remove the trailing "\n". > > thanks, I am/was looking to avoid looping through the array unnecessarily, > and simply have them removed at the time of dumping the file into the > array.
Then use: if(in_array($HTTP_SERVER_VARS["REMOTE_USER"] . "\n", $users)) { ... } BTW, it should be: fwrite ($fd, join('', $users)); otherwise each time you write the file out it will have an increasing number of "\n" attached to each user. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php