Grazie per l'interessamento, ho guardato i link che hai postato, ma la situazione non cambia.
Ho provato ad impostare un altra variabile a 0.00 e poi sommargli il valore della variabile che devo controllare, che a detta del manuale questo dovrebbe far capire a php che si tratta di un float, ma funziona come al solito al contrario, le stringhe passano i float no.
Stessa cosa con l'espressione regolare che ho trovato nell'altro link anche questa funziona al cotrrario.
Avevo provato anche is_string facendo un controllo duale e con is_numeric, ma is_numeric addirittura risultava sempre verificata che la variabile fosse stringa oppure numerica.
Le funzioni credo di averle provate tutte, non capisco quale possa essere la causa del problema, che dubito fortemente possa trattarsi di un problema di sintassi.
Non è che funziona male php, forse perchè gira su Internet Information Service come server in locale?