Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]If... "Zmiana zmiennej"
Forum PHP.pl > Forum > Przedszkole
xSlash
Kod
if($sTresc == 0)       {
        $sT = ''$sTresc'';
       }
        else
       {
        $sT = ''$sTresc'|';
       }

Mam cos takiego, ale wyskakuje blad w 2 linijce "$sT = ''$sTresc'';". Czy ja to zle napisałem czy w ogole nie mozna zrobic warunku z outem zmiany zmiennej? Jesli mozna to jakos naprawic zeby $sT (jezeli "tak") była zmienna $sTresc to prosze o pomoc...  sadsmiley02.gif sadsmiley02.gif sadsmiley02.gif
potreb
Podstawy. Kursów mało?
  1. <?php
  2. $sT = $sTresc;
  3. $sT = 'gfgf '.$sTresc.' gfggf';
  4.  
  5. $sT = "gfgf $sTresc gfggf"; // ta forma jest lepsza
  6. ?>
Crozin
http://www.php.net/manual/en/language.types.string.php - łączenie stringów

A całość można zapisać w jednej linii:
  1. <?php
  2. $sT = $sTresc == 0 ? $sTresc : $sTresc . '|';
  3. ?>
piotrooo89
Cytat(potreb @ 20.04.2009, 20:34:40 ) *
  1. <?php
  2. $sT = &#092;"gfgf $sTresc gfggf\"; // ta forma jest lepsza
  3. ?>


co? katowanie pasera PHP lepsze? nie wydaj mi się.
potreb
Tak, a jak bardzo się katuje?
piotrooo89
przy 2 zmiennych nieznacznie przy 100 już odczuwalnie.
sowiq
@potreb,
to nie chodzi o katowanie, tylko o zły nawyk. Chociażby dlatego, że takiego zapisu nie pokoloruje Ci edytor (przeważnie), przez co kod staje się mniej czytelny.

A co do tego katowania - trochę tu, trochę tam i już masz 10% wolniej...
l0ud
Pewnie niewiele, ale pierwsza wersja jest lepsza chociażby ze względu na czytelność w edytorach (albo chociażby tu, na forum) i brak konieczności stosowania {} przy bardziej złożonych zmiennych... Jest też wydajniejsza - owszem - niezauważalnie, jednak mogąc zrobić coś lepiej bez żadnego wysiłku, tak na logikę lepiej to zrobić tongue.gif
piotrooo89
w tym przykładzie:

  1. <?php
  2. $z = "coscos $zm coscososo";
  3. ?>


zmuszasz paser do znalezienia zmiennej w tekście.
a tak:

  1. <?php
  2. $z = 'cococo'.$zm.'cococo';
  3. ?>


tu bezpośrednio wskazujesz gdzie jest zmienna - mniej pracy dla pasera, szybsze działanie.
xSlash
No wiec zrobilem tak jak ten... ;] (cokolwiek to znaczy) i nic nie dodaje... Na 99% to dlatego:


Kod
if($sTresc == 0)


...bo rekord nie jest = 0. Jak napisac zeby porownywalo z pustym rekordem? On nawet nie jest "null"... On jest poprostu czysty. Mozna to jakos zrobic czy musi byc z nullem?
l0ud
Czy zmienna jest zadeklarowana (możesz negować):
http://pl.php.net/manual/en/function.isset.php

Czy zmienna jest pusta:
http://pl.php.net/manual/en/function.empty.php
piotrooo89
kurcze nie mogę zrozumieć o co Ci chodzi...

  1. <?php
  2. if($sTresc == 0)       {
  3.        $sT = $sTresc;
  4.       }
  5.        else
  6.       {
  7.        $sT = $sTresc.'|';
  8.       }
  9. ?>


albo zamiast == daj != ale nie wiem o co chodzi.
xSlash
Ty razem pomogl l0ud... dostałem pomaga... 


Chodzilo mi oto ze jak mialem if($sTresc == 0) to wyskakiwal ze jest w tej linijce blad...

W kursie, ktory zapodal l0ud zauwazylem ze powinno byc if($sTresc == "") I juz dziala... dzieki wszystkim

Reasumujac pomagi dostali l0ud i piotro ;] Dzieki  aaevil.gif




P.S. Pewnie zaraz zaloze nowy temat bo czegos nie bd umial, takze z gory zapraszam  wstydnis.gif
piotrooo89
Cytat(xSlash @ 20.04.2009, 21:15:22 ) *
W kursie, ktory zapodal l0ud zauwazylem ze powinno byc if($sTresc == "") I juz dziala... dzieki wszystkim


muszę to napisać, ponieważ nie jest to kurs tylko manual i jest to narzędzie w którym pierw powinieneś szukać pomocy.
xSlash
niestety nie jestem pro z anglika  wstydnis.gif
Crozin
Manual PHP jest częściowo spolszczony.
"pro z anglika" - co to w ogóle za określenie. Poza tym jak nie znasz jakiegoś słówka to słownik online, albo i całą witrynę Googleowym transolatrem przeleć
xSlash
Cytat(Crozin @ 20.04.2009, 22:26:45 ) *
transolatrem przeleć

blinksmiley.gif blinksmiley.gif blinksmiley.gif blinksmiley.gif blinksmiley.gif blinksmiley.gif blinksmiley.gif

Troche OffTop, ale i tak juz sie sprawa wyjasnila, takze dzieki wielkie jeszcze raz wszystkim  dry.gif
Crozin
translate.google.com - tłumaczy całe strony
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.