ICU documentation: http://icu-project.org/apiref/icu4c/uchar_8h.html#a36982efc84143b9bb5a11bf54b86af48
Currently the PHP function returns the U_NO_NUMERIC_VALUE constant, which is set to the very weird "float(-123456789)"; basically it's a value that it's certain it doesn't have an Unicode numeric character equivalent counterpart. I would change the function to return NULL instead; what do you think?