Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: Dubbio Else if

  1. #1

    Dubbio Else if

    Secondo voi è meglio usare un codice così:

    Codice PHP:
      $ris = (($a 100)/$tot);
      if (
    $ris>=80){
      ....
      } if (
    $ris>=60 and $ris<=79){
      ....
      } if (
    $ris>=40 and $ris<=59){
      ....
      } if (
    $ris>=20 and $ris<=39){
      ....
      } if (
    $ris>=10 and $ris<=19){
      ....
      } if (
    $ris>=and $ris<=9){
      $....
      } if (
    $ris>=and $ris<=4){
      $....
      } 
    oppure con else if:

    Codice PHP:
      $ris = (($a 100)/$tot);
      if (
    $ris>=80){
      ....
      } else if (
    $ris>=60 and $ris<=79){
      ....
      } else if (
    $ris>=40 and $ris<=59){
      ....
      } else if (
    $ris>=20 and $ris<=39){
      ....
      } else if (
    $ris>=10 and $ris<=19){
      ....
      } else if (
    $ris>=and $ris<=9){
      $....
      } else if (
    $ris>=and $ris<=4){
      $....
      } 
    Il server lavora più veloce con else if?? Esiste un codice migliore di questo utilizzato??

    Grazie a tutti per l'aiuto!!

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Io ti consiglierei di usare lo switch. Non so se esistano differenze in termini di performance ma è più elegante.
    http://se2.php.net/switch

  3. #3
    concordo con nicola75ss....

    ciao

  4. #4
    Ottima idea, però non sono tanto pratico come potrei applicarlo al mio esempio??

  5. #5
    Risolto:

    Codice PHP:
      switch ($ris) {
      case (
    $ris>=80):
      ...
      break;
      case (
    $ris>=60 and $ris<=79):
      ...
      break;
      case (
    $ris>=40 and $ris<=59):
      ...
      break;
      case (
    $ris>=20 and $ris<=39):
      ...
      break;
      case (
    $ris>=10 and $ris<=19):
      ...
      break;
      case (
    $ris>=and $ris<=9):
      ...
      break;
      case (
    $ris>=and $ris<=4):
      ...
      break;
      } 
    Grazie tante a tutti siete i migliori

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Stavo finendo di postarti un esempio ma mi hai anticipato.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    10
    Originariamente inviato da DottorZed
    Risolto:

    Codice PHP:
      switch ($ris) {
      case (
    $ris>=80):
      ...
      break;
      case (
    $ris>=60 and $ris<=79):
      ...
      break;
      case (
    $ris>=40 and $ris<=59):
      ...
      break;
      case (
    $ris>=20 and $ris<=39):
      ...
      break;
      case (
    $ris>=10 and $ris<=19):
      ...
      break;
      case (
    $ris>=and $ris<=9):
      ...
      break;
      case (
    $ris>=and $ris<=4):
      ...
      break;
      } 
    Grazie tante a tutti siete i migliori
    In questo modo penso che sia inefficiente perché usi due operandi che contengono $ris. Cioè, se si usa $ris come operando di switch, non si dovrebbe usare $ris come operando per case. In questo caso userei if con elseif.

    Spero di essermi spiegato... non sono madrelingua.

    -M

  8. #8
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Originariamente inviato da Moogey
    In questo modo penso che sia inefficiente perché usi due operandi che contengono $ris. Cioè, se si usa $ris come operando di switch, non si dovrebbe usare $ris come operando per case. In questo caso userei if con elseif.

    Spero di essermi spiegato... non sono madrelingua.

    -M
    In effetti è sorto anche a me il dubbio. Io ho sempre usato lo switch per valori ben definiti di una variabile e mai per verificare il range della stessa.
    Probabile che tu abbia ragione e che in un caso come questo sia preferibile usare l'if.
    Attendo chiarimenti.

  9. #9

    Re: Dubbio Else if

    Dunque secondo voi il metodo migliore è questo??


    Codice PHP:
      $ris = (($a 100)/$tot);
      if (
    $ris>=80){
      ....
      } else if (
    $ris>=60 and $ris<=79){
      ....
      } else if (
    $ris>=40 and $ris<=59){
      ....
      } else if (
    $ris>=20 and $ris<=39){
      ....
      } else if (
    $ris>=10 and $ris<=19){
      ....
      } else if (
    $ris>=and $ris<=9){
      $....
      } else if (
    $ris>=and $ris<=4){
      $....
      } 
    Vi ricordo che a me interessa le prestazioni dello script e cioè quello che risulta più veloce e leggero!!

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    10
    Penso che questa sia la scelta migliore. Non penso che ci sia una differenza di velocità tra switch e if/elseif

    -M

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.