Originariamente inviato da skidx
è solo una botta di culo, occhio che poi sono le peggiori da correggere in fase di debugging

$stringa - 1 infatti restituisce -1 (la stringa convertita in intero vale 0), e il terzo parametro della funzione substr accetta anche valori negativi, intendendoli come numero di caratteri da eliminare da fine stringa.

Svelato l'arcano. Grazie skidx, vedrò di non sfidare troppo la sorte in futuro. Grazie e buona notte.