Scrierea instructiunilor switch, break si default

In cazul in care vrem sa comparam valoarea unei singure variabile cu o succesiune de valori, in locul instructiunii "if" putem folosi instructiunea switch:
De exemplu, sa presupunem ca valoarea variabilei $numar este l, 2 sau 3, reprezentând respectiv dimensiunile "mica", "medie" si "mare". Iata un mic script care afiseaza dimensiunile asociate valorilor variabilei $numar, folosind functia switch alaturi de break si default care vor fi explicate mai jos:

<?php
switch($numar) {
      case(1):
          echo "mic";
          break;
      case(2):
          echo "mediu";
          break;
      case(3):
          echo "mare";
          break;
      default:
          echo "Acesta nu este un cod valabil";
}
?>
- Actiunea unei instructiuni switch este determinata de valoarea unei expresii întregi, nu de valoarea unei expresii conditionale. Numele variabilei este dat între parantezele care urmeaza dupa cuvântul cheie switch. Acoladele delimiteaza o serie de instructiuni case si o instructiune default optionala, fiecare dintre instructiunile cuprinse între acolade putând avea instructiuni asociate.
Când este executata, instructiunea switch încearca sa stabileasca o identitate între valoarea variabilei sale si valoarea asociata unei instructiuni case. Se vor executa instructiunile asociate primei instructiuni "case" pentru care identitatea respectiva este valabila.
Daca valoarea variabilei din instructiunea switch nu corespunde nici uneia din valorile asociate instructiunilor case, se vor executa instructiunile asociate instructiunii default, daca exista o asemenea instructiune (ne este obligatorie).
Un procedeu de programare indicat consta în aceea ca fiecare instructiune case din cadrul unei instructiuni switch sa se încheie cu o instructiune break.
; Instructiunea break determina încheierea executiei instructiunii switch, sare peste "case-urile" ramase si se executa codurile care mai sunt (daca exista) dupa "switch". În absenta instructiunii "break", executia trece la urmatoarea instructiune "case" sau "default", fapt nedorit în majoritatea cazurilor.

• Nu este necesar sa folositi numere întregi consecutive în instructiunile case ale unei instructiuni switch. Daca preferati, puteti folosi numere întregi non-consecutive, numere cu virgula sau siruri. Valoarea de la "case" se poate adauga si fara paranteze, separata prin spatiu.
- Exemplu:
<?php
$site = 'marplo';
switch($site) {
  case 1:
    echo 'php.net';
    break;
  case 'coursesweb':
    echo 'https://coursesweb.net';
    break;
  case 'marplo':
    echo 'marplo.net';
    break;
  default: echo 'google.com';
}
?>

2. Operatorul ? :

Operatorul conditional ?:, denumit uneori "operator ternar" sau "operator întrebare-doua puncte", constituie o alta modalitate de a scrie decizii în PHP.
Acest operator formeaza o expresie care se poate folosi în multe contexte PHP. Iata sintaxa de utilizare a acestuia:

expresie-conditionala ? valoare-TRUE : valoare-FALSE
Observati cum semnul întrebarii este separat de caracterul doua puncte prin valoarea valoare-TRUE.
Operatorul conditional îsi evalueaza expresia conditionala. Daca expresia este evaluata la valoarea TRUE, operatorul conditional returneaza valoarea valoare-TRUE; în caz contrar, returneaza valoarea valoare-FALSE.
De exemplu, sa luam în considerare urmatoarea instructiune de atribuire, care foloseste un operator conditional:
$a = ($b > $c) ? 10  : 20;
Aceasta instructiune de atribuire compara valorile variabilelor $b si $c. Daca valoarea variabilei $b este mai mare decât aceea a variabilei $c (adica TRUE), atunci variabilei $a îi este atribuita valoarea 10; în caz contrar, variabilei respective îi este atribuita valoarea 20.

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Ce atribut poate fi utilizat pentru a adauga stiluri CSS direct in tag-ul HTML?
type style class
<div style="width: 80%; border: 3px solid #888888;">Continut</div>
Care din metodele proprietatii CSS transform distorsioneaza elementul HTML la un anumit unghi (inclusiv continutul lui)?
translate() scale() skew()
#un_id {
  transform: skew(20deg, 25deg);
  -ms-transform: skew(20deg, 25deg);   /* IE 9 */
  -webkit-transform: skew(20deg, 25deg);   /* Safari and Chrome */
}
Clic pe functia care poate converti un obiect Date in Sir.
indexOf() toString() getDate()
var rightnow = new Date();
alert( rightnow.toString() );
Care functie aplica o alta functie la elementele unui array?
array_merge() array_search() array_map()
$arr = arra("abc", "<p>xyz</p>", "<em>PHP</em>");
// aplica functia strip_tags() ca sa stearga tag-urile HTML din fiecare element din %arr
$arr = array_map("strip_tags", $arr);
}
Cum se spune "sambata" in limba engleza?
Sunday Saturday Monday
On Saturday I visit my grandparents.
- Sambata imi vizitez bunicii.
Cum se spune "sambata" in limba spaniola?
domingo lunes sábado
Sábado visito mis abuelos.
- Sambata imi vizitez bunicii.
Instructiuni conditionale switch

Last accessed pages

  1. Gramatica limbii engleze - Prezentare Generala (61834)
  2. Trecutul simplu si continuu - Past Tense Simple and Continuous (22365)
  3. Verbe modale - Modal verbs - CAN, COULD, MAY, MIGHT, MUST (18286)
  4. Verbe frazale din limba Engleza (9343)
  5. Diferenta dintre Like si As (2868)

Popular pages this month

  1. Gramatica limbii engleze - Prezentare Generala (1611)
  2. Prezentul simplu si continuu - Present Tense Simple and Continuous (985)
  3. Cursuri si Tutoriale: Spaniola, Engleza, HTML, CSS, Php-Mysql, JavaScript, Ajax (758)
  4. Trecutul simplu si continuu - Past Tense Simple and Continuous (736)
  5. Prezent perfect si Prezent perfect continuu - Present perfect and Continuous (714)