Visualizzazione dei risultati da 1 a 5 su 5

Discussione: is_int non corretto?

  1. #1
    Utente di HTML.it L'avatar di Scream
    Registrato dal
    Apr 2002
    Messaggi
    228

    is_int non corretto?

    Ciao a tutti, sto recuperando dei valori tramite $_GET.
    Questi valori devono essere numeri interi, quindi ho fatto un check in questo modo:
    Codice PHP:
    $var0 $_GET['var0'];
    $var1 $_GET['var1'];
    $var2 $_GET['var2'];

    if(!
    is_int($var0)) {
      echo 
    "numero non intero";
    } else {
      echo 
    "numero intero";

    tuttavia mi dice sempre 'numero non intero' anche quando lo è.
    Suggerimento?

  2. #2
    Perchè le variabili recuperate tramite get sono stringhe e non interi anche se contengono un intero.

    Codice PHP:
    $var0 "1"// Non intero
    $var0 1// Intero 
    Prova ad utilizzare is_numeric()
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Altrimenti potresti sfruttare anche la preg_match

    Codice PHP:
    $pattern "/^([0-9]+)$/";
    if(
    preg_match($pattern,$string)) {
    echo 
    'intero';
    } else {
    echo 
    'non intero';

    oppure proprio la funzione is_numeric

    Codice PHP:
    function isInt ($x=0){
    return (
    is_numeric($x) ? intval($x) == $x false);
    }
    if(
    isInt($var) {
    echo 
    'intero';
    } else {
    echo 
    'non intero';


  4. #4
    smart way
    Codice PHP:
    $id intval($_GET['id']);
    if(
    $id 0){
      
    //do stuff 
    }
    // redirect not found page 404 
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  5. #5
    Utente di HTML.it L'avatar di Scream
    Registrato dal
    Apr 2002
    Messaggi
    228
    Ne ho utilizzata una differente ed ho ottenuto quello che mi serviva:

    ctype_digit che effettivamente verifica che non ci siano , o . o altri caratteri al di fuori delle cifre

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.