Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Problema con intero da stringa

    ciao!

    ho una stringa fatta in questo modo: KG 19 oppure KG 19,5.
    devo estrapolare solo il numero, ed ho fatto così:
    Codice PHP:
    $int filter_var($strFILTER_SANITIZE_NUMBER_INT); 
    funziona bene nel primo caso, ma non nel secondo.
    ad esempio:
    codice:
    $str = 'KG 19';
    $int = filter_var($str, FILTER_SANITIZE_NUMBER_INT);
    echo $int; --> 19
    
    $str = 'KG 19,5';
    $int = filter_var($str, FILTER_SANITIZE_NUMBER_INT);
    echo $int; --> 195
    come vedete, nel secondo caso, esce un numero sbagliato.
    leva la virgola e trasforma tutto in numero.
    come posso fare??

  2. #2
    Trasforma la virgola in punto.

  3. #3
    Quote Originariamente inviata da k.b Visualizza il messaggio
    Trasforma la virgola in punto.
    ciao k.b.!
    io avevo provato così, ma sembra non funzionare cmq:
    Codice PHP:
    $newStr str_replace(',''.'$str);
    $int filter_var($newStrFILTER_SANITIZE_NUMBER_INT); 

  4. #4
    Utente di HTML.it L'avatar di .Kurt
    Registrato dal
    Jul 2007
    Messaggi
    654
    http://php.net/manual/it/filter.filters.flags.php

    FILTER_FLAG_ALLOW_FRACTION FILTER_SANITIZE_NUMBER_FLOAT Allows a period (.) as a fractional separator in numbers.

  5. #5
    Quote Originariamente inviata da .Kurt Visualizza il messaggio
    così sembra funzionare:

    Codice PHP:
    $newStr str_replace(',''.'$str);
    $int filter_var($newStrFILTER_SANITIZE_NUMBER_FLOATFILTER_FLAG_ALLOW_FRACTION); 
    grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.