Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> jaki nawias w php
pkolun
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 16.02.2009

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
marcio
post
Post #2





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


  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 (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
tomsi
post
Post #3





Grupa: Zarejestrowani
Postów: 379
Pomógł: 45
Dołączył: 30.06.2007

Ostrzeżenie: (10%)
X----


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

Ten post edytował tomsi 23.05.2009, 00:27:06
Go to the top of the page
+Quote Post
pkolun
post
Post #4





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 16.02.2009

Ostrzeżenie: (0%)
-----


faktycznie, teraz działa, czyli jak rozumiem po "echo" nie dajemu nawiasu zadnego?
Go to the top of the page
+Quote Post
marcio
post
Post #5





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


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.
Go to the top of the page
+Quote Post
Crozin
post
Post #6





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


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)

Ten post edytował Crozin 23.05.2009, 01:41:14
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.12.2025 - 11:17