Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: isset i $_GET['par']
Forum PHP.pl > Forum > Przedszkole
miko
Mam tak
Kod
$par_request = (isset($_GET['req']) ? $_GET['req'] : null);

czy można odczytywać parametry w milszy ssposób?
Mój nie podoba mi się bo widnieje w nim dwa razy ciąg $_GET['req'];
Jeśli zrobię
Kod
$par_request = $_GET['req'];

to sypią się ostrzezenia
NuLL
Musi być jak napisałeś na początku aby nie sypało. Coś za coś smile.gif
FiDO
Mozna sie wspomoc jakas funkcja/klasa pomocnicza..

W najprostszym przypadku:
  1. <?php
  2.  
  3. function get($idx) 
  4. {
  5. return isset($_GET[$idx])?$_GET[$idx]:null;
  6. }
  7.  
  8. // i potem
  9. $par_request = get('req');
  10.  
  11. ?>
orson
witam ....

jest jeszcze jeden sposób który nie wywołuje noticów:
  1. <?php
  2.  
  3. if (array_key_exists('login', $_SESSION) AND $_SESSION['login'] != ''){
  4. //do smth
  5. }
  6.  
  7. ?>

dlatego że wyrażenie w ifie jest przetwarzane od lewej do prawej ... i po pierwszym false jak nie ma OR if kończy i nawet nie sprawdza pozostałych.... między innymi dla tego należy stosować nawiasy ...

pozdrawiam
FiDO
Twoja wersja jest jeszcze dluzsza, a chodzilo autorowi zapewne o zminimalizowanie ilosci pisanego kodu. Pozatym to co napisales mozna skrocic do:
  1. <?php
  2.  
  3. if (!empty($_SESSION['login'])) {
  4.  // ...
  5. }
  6.  
  7. ?>

empty tez nie rzuca notice'ow, a jest o jeden warunek mniej.
orson
witam ...

na pewno nie wywala undefined index questionmark.gif bo to jest zawsze jak chcesz odwołać się do nie istniejącego indeksu ...

pozdrawiam
FiDO
Gdybym tego nie byl pewien to bym nie pisal.. a ze uzywam juz tego dosc dlugo to wiem smile.gif Zreszta:
Cytat("manual")
empty() is the opposite of (boolean) var, except that no warning is generated when the variable is not set
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.