Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047

    operatori di confronto non funzionanti perchè le variabili sono stringhe

    Spiegatemi per favore questa cosa che per me ha dell'assurdo.

    l'utente inserisce un numero da form.
    Lato server leggo la variabile

    $var = $_REQUEST['var'];

    se faccio un controllo del tipo

    if ($var < 1)

    non mi restituisce il valore giusto!
    Intuendo che fosse un problema di tipi ho provato con la funzione is_string e scopro che lo considera come stringa.

    Ma il php non fa la conversione implicita dei tipi?
    se faccio $var + 1 mi dà il risultato giusto, ma se uso operatori di confronto no!

    Esiste il modo di fare il cast forzato?
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    $var = (int) $var;

    esempio
    $a = "3";
    echo gettype($a); // string
    $a = (int) $a;
    echo gettype($a); // integer



  3. #3
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    ah il cast come in C
    grazie
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    guarda anche settype sul manuale
    http://se2.php.net/manual/it/function.settype.php

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.