> How is 0342352 being assigned to the variable that you're filtering? > If PHP thinks it's a string, then the filter will fail. If PHP thinks > it's a number, it seems to convert it internally to the number 115946, > before you get to the filter. Not sure what's going on there. At any Sorry, brain fart. In PHP, a leading 0 in an integer indicates an octal number (thanks, Martin). PHP immediately converts it to decimal internally. Hence 0342352 becomes 115946. But it's a bit of a fluke that the example you used happened to be a valid octal number. Try something that starts with 0 and has an 8 or a 9 in it; you'll end up with plain old 0 (presumably because PHP's internal attempt to convert from octal, fails): http://codepad.org/KBUgAZWJ Which, of course, leads to the apparent-false discussed above. Ben -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php