Tiffany Brown has posted an update to her look into is_numeric versus ctype_digit today, mentioning an issue she came across when testing based on the differences she found in her previous posting.
Just a quick follow-up to my post on is_numeric vs. ctype_digit. There is one quirk with ctype_digit that may affect your choice about whether to use it.
When the string in question is empty, ctype_digit returns TRUE. However, when it is null, ctype_digit will return FALSE.
She includes code to illustrate, noting the return of each function.