Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jaki nawias w php
Forum PHP.pl > Forum > Przedszkole
pkolun
witam, mam takie (jak się niektórym wydaje) głupie pytanie. Dopiero zaczynam naukę php, i wg kursu robię sobie różne zadanka. I na jednym utknąłem.


$abc = 123;


IF ($abc == 123)

{echo 'to 123';}


czy jest to dobrze zrobione?? bo gdy wrzucę na serwer to wykrywa mi błąd w lini tam gdzie jest echo.
Metodą prób i błędów doszedłem do tego, że jest coś nie tak z nawiasem, bo gdy skopiowałem nawiasy z kursu, wszystko było ok. Więc chodzi mi o to jakich nawiasów używa się w php, czy tych pod cyframi "9 i 0" czy tych między "P i enter".

Bez tego nie mogę ruszyć dalej. z góry dziękuje za pomoc.
marcio
  1. <?php
  2. $abc = 123;
  3.  
  4. if($abc == 123) echo('123');
  5. else echo('Nie 123');
  6. ?>

Tak przy jednej operacji po warkunku klamry nie sa ci potrzebne.

Dwa to [] sie uzywa dla tablic $_GET,$_POST,$_SESSION i wlasnych etc...

Klamry {} uzywasz do warunkow,fukcji, klas etc.... zreszta jak czytasz obojetnie jaki kurs takie rzeczy masz tam opisane tongue.gif
tomsi
Ale te w linii tam, gdzie masz echo to sa klamry. Stosujesz je po to, że kod w tych klamrach będzie się wykonywał, jeśli spełni się warunek w IF.

P.S.
Polecam Ci te stronki:

http://www.webinside.pl/php/kursy
http://pl.wikibooks.org/wiki/PHP
pkolun
faktycznie, teraz działa, czyli jak rozumiem po "echo" nie dajemu nawiasu zadnego?
marcio
Cytat(pkolun @ 23.05.2009, 01:42:08 ) *
faktycznie, teraz działa, czyli jak rozumiem po "echo" nie dajemu nawiasu zadnego?

Zle rozumiesz nawiasy dajemy wtedy gdy po danej instrukcji if,else,else if masz wiecej niz jedno dzialania np:

  1. <?php
  2. if(isset($_POST['form'])) {
  3.  
  4. $sql = mysql_query('select * from costam.....');
  5. if($sql) echo('SUPER');
  6.  
  7. }
  8. ?>

Jednak jesli nie musialoby byc tego 2 if'a wtedy nie trzebaby bylo stosowac klamr.

Mam nadzieje ze zrozumiales

P.S dokladnie to po waruknu wykona sie tylko pierwsza "metoda" ktora na ma koncu ";" gdy nie ma klamer {} a reszta bedzie ignorowana co to danego warunku
  1. <?php
  2. $dane = array(1,2,3,4,5);
  3.  
  4. for($i = 0; $i <= count($dane); $i++) $arr[] .= $dane[$i];
  5. echo($dane[$i]);
  6. ?>

I te echo nie wyswietli nam juz wszystkich elementow jesli nie dodamy klamer lub do echo nie podamy jako parametru $arr.
Crozin
Nawiasy klamrowe służą do tworzenia bloków kodu. W przypadku, gdy po instrukcach typu: if(), while(), for() nie ma jawnie zadeklarowanego bloku kodu PHP sam sobie taki utworzy. W obrębie tego bloku znajdzie się pierwsza instrukcja.

  1. <?php
  2.  
  3. if(true)
  4.    echo 'w bloku IF';
  5. echo 'poza blokiem IF';
  6.  
  7. if(true){
  8.    echo 'w bloku IF';
  9.    echo 'również w bloku IF';
  10. }
  11.  
  12. if(true) //1
  13.    if(true) //2
  14.        if(true) //3
  15.            echo 'w bloku IF#3, który jest w bloku IF#2, który jest w bloku IF#1';
  16.  
  17. //Dokładnie tak samo działający kod:
  18. if(true){
  19.    if(true){
  20.        if(true){
  21.            echo '..';
  22.        }
  23.    }
  24. }
  25.  
  26.  
  27. if(true) //1
  28.    if(true) //2
  29.        echo 'W obrębie bloku #2, który jest w #1';
  30. echo 'Poza blokiem #1';
  31. ?>


PS. Estetycznie prowadzony kod z poprawnymi wcięciami (w przeciwieństwie do wyżej prezentowanych) ułatwia orientacje w kodzie. Nie trzeba wtedy w ogóle polegać na klamrach (oczywiście chodzi tylko o ogarnięcie kodu)
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.