Hmm, maybe it's time to RTFS. Of course, that didn't help me any when I had my problem with strip_tags()... If the underlying implementation resolves to a call to write(), I think in most unixes these are atomic, but I'm not sure if there is any way of handling the current-location issue (i.e. two or more processes seek to the end of the file, process A writes something that starts at offset 400, now process be writes something to the same location.)
You could always implement a semaphore; someone was asking about those here the other day.