Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]skladnia problem ze zrozumieniem
Forum PHP.pl > Forum > Przedszkole
astutus
Nie moge rozkminic tego znaku zapytania w kodzie:
  1. $search = (isset($_GET['search]) ? $_GET['search'] : ' ');

Co ma znaczyc w tym kodzie ten znak zapytania? Podejrzewam, ze to jakas alternatywa dla if'a ale ogolna konstrukcje jaka to ma, bo pierwszy raz w PHP sie z czyms takim spotykam.
Crozin
Szukaj: Ternary Operator
lord2105
to inny zapis tego:
  1. <?
  2. if (isset($_GET['serach'])) {
  3. $search = $_GET['search'];
  4. }
  5. else {
  6. $search = '';
  7. }
  8.  
astutus
Cytat(lord2105 @ 12.12.2010, 12:51:04 ) *
to inny zapis tego:
  1. <?
  2. if (isset($_GET['serach'])) {
  3. $search = $_GET['search'];
  4. }
  5. else {
  6. $search = '';
  7. }
  8.  


No wlasnie glowne moje zdziwienie wywoluje ta linijka:
  1. $search = '';


ktora rownowazy ta z mojego kodu:
  1. $_GET['search'] : ' '


w pierwszym przypadku przypisujemy do zmiennej, w drugiej wydaje mi sie, ze do superglobalnej, a niby to ma byc rownowazne.
lord2105
znak ":" to inaczej "else" kolego

w obu przypadkach ustawiana jest zmienna search
astutus
Ok juz przeczytalem o ternary operator i rozumiem. Dziekuje za pomoc.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.