22:03 <@Nekrataal> Witam wszystkich na swoim dziewiczym wykladzie o php
22:04 <@Nekrataal> dzisiaj beda kontynulowal to co zaczol ani tydzien temu
22:04 <@Nekrataal> czyli jeszcze podstawy ;>
22:04 <@Nekrataal> mam nadzieje ze zapotrzyliscie sie w apache/php na swoich maszynach
22:05 <@Nekrataal> dla windowsowcow moge na szybko polecic pakie ala http://www.wampserver.com - instalacja w 3 minuty
22:05 <@Nekrataal> krotkie przypomnienie, bo widze duzo nowych osob
22:05 <@Nekrataal> kod php zawiera sie miedzy znacznikami <?php a ?>
22:06 <@Nekrataal> $asdf - tak deklarujemy zmienne
22:06 <@Nekrataal> nie maja one jako tako typow
22:06 <@Nekrataal> do wypisywania tekstu na ekran sluza dwie funkcje, echo() i print()
22:06 <@Nekrataal> na potrzeby kursu bedziemy uzywac ich zamiennie
22:07 <@Nekrataal> chociaz nalezy tutaj zaznaczyc ze echo jest szybsze od print ;>
22:07 <@Nekrataal> za to nie zwraca zadnej wartosci
22:07 <@Nekrataal> przejdzmy do rzeczy
22:07 <@Nekrataal> na pierwszy ogien leca instrukcje warunkowe
22:07 <@Nekrataal> if, else, elseif
22:07 <@Nekrataal> tutaj jest prosty kod
22:07 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.1.phps
22:08 <@Nekrataal> na poczatku deklaracja 2uch zmiennych i przypisanie im wartosci
22:08 <@Nekrataal> pozniej warunki
22:08 <@Nekrataal> znacie to pewnie z wykladow o perlu/c etc ? :>
22:08 <@Nekrataal> tutaj jest podobnie
22:08 <@Nekrataal> jakies pytania ?
22:08 < Evill> y
22:08 < Evill> print nikt nieuzywa
22:08 < Evill> :p
22:09 < shd> w php niema rozrozniania typow zmiennych?
22:09 < moj_MISiO> brak
22:09 <@Nekrataal> tutaj mozecie sprawdzic ten skrypt w dzialaniu
22:09 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.1.php
22:09 <@Nekrataal> sa, ale nie sa jako tako jawne
22:09 <@Nekrataal> mozesz zrobic
22:09 <@Nekrataal> $a = 'asdf'
22:09 <@Nekrataal> a za chwile
22:09 <@Nekrataal> $a = 4;
22:09 <@Nekrataal> i wszystko bedzie ok
22:09 < shd> aha
22:09 <@Nekrataal> do porownywania typow sluza operatory === oraz !== o ktorych bedzie w sumie za chwile
22:10 < shd> php to to samo co phps -,- ?
22:10 < shd> o rozszerzenie chodzi
22:10 <@Nekrataal> phps defaultowo powinno wyswietlac ladny pokolorowany kod ;>
22:10 <@Nekrataal> ktory nie bedzie wykonywany ;>
22:10 < shd> a :)
22:11 <@Nekrataal> show_source('nazwa_pliku') zadziala tak samo ;>
22:11 <@Nekrataal> k, jedziemy dalej ?
22:11 <@phoenix__> czyli dajemu rozszerzenie phps?
22:11 <@phoenix__> i wysiwtli source?
22:11 <@Nekrataal> tak
22:11 <@phoenix__> dobra thx
22:11 <@phoenix__> ja away
22:12 <@Nekrataal> kolejna rzecza jezeli o warunkach juz mowa. ktora wypada znac jest switch
22:12 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.2.phps
22:13 <@Nekrataal> tutaj jest przyklad
22:13 <@Nekrataal> wiecej o nim mozna przeczytac w manualu:
22:13 <@Nekrataal> http://pl.php.net/manual/en/control-structures.switch.php
22:13 <@Nekrataal> jako parametr przyjmuje jedna zmienna
22:14 <@Nekrataal> pozniej mamy nawias klammrowy i slowo kluczowe 'case'
22:14 <@Nekrataal> bo case wpisujemy jakas wartosc
22:15 <@Nekrataal> jezeli wczesniej podana zmienna bedzie rowna tej wartosci
22:15 <@Nekrataal> to wykona nam sie kod zawary miedzy case az do momentu napotkania na break
22:15 <@Nekrataal> k, pytania ?
22:15 < Mewp> tak
22:16 < Mewp> czemu zaczynasz wyklad jak jest split?
22:16 <@Nekrataal> dobre pytanie ;p
22:16 < ^Klocek> zeby bylo mniej pytan ? :P
22:16 < fgfd> ej
22:16 < fgfd> nic nie rozumie
22:16 < Mewp> lol :D
22:16 < fgfd> gdybym trego nie umiał
22:16 < fgfd> :P
22:16 < fgfd> haha
22:16 < fgfd> wykład
22:16 < fgfd> przykąłd kodu i odesłanie do manuala
22:16 < fgfd> :P
22:16 <@Nekrataal> pytajcie, ja nie gryze ;p
22:17 < shd> zawsze sie tak wszyscy czepiaja?
22:17 <@Nekrataal> fgfd, a co mam mowic w podstawach ? :>
22:17 < shd> ja nieznam php i jakos wszystko zrozumialem :P
22:17 <@Nekrataal> shd, zrozumiales ?
22:17 < shd> jasne
22:17 <@Nekrataal> no to sie ciesze, i o to mi chodzi
22:17 < shd> mozna dalej
22:17 < shd> chyba
22:17 <@Nekrataal> wiec co wypisze nam ten skrypt na ekran ? :>
22:18 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.2.phps
22:18 < moj_MISiO> bez s
22:18 <@Nekrataal> z s chcialem ;>
22:18 < shd> :)
22:18 <@Nekrataal> no coz
22:18 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.2.php
22:18 <@Nekrataal> wypisze oczywiscie 5
22:19 <@Nekrataal> gdybysmy wartosc zmiennej zmienili na taka ktora nie wystepoje w zadnym z case
22:19 <@Nekrataal> wtedy zostanie wykonany kod za instrukcja default
22:20 <@Nekrataal> k
22:20 <@Nekrataal> moze teraz slowko o operatorach
22:21 <@Nekrataal> = (przypisanie wartosci z prawej strony operatora, do zmiennej po lewej) - przyklad $asdf = 5;
22:21 <@Nekrataal> to juz znacie
22:21 <@Nekrataal> == (porownywanie 2uch rzeczy) - to tez juz znacie
22:22 <@Nekrataal> != (odrazu z przykladem np. 3 != 5) tlumaczy sie na 'jezeli 3 nie rowna sie 5
22:22 <@Nekrataal> w php mozna uzywac rownierz operatora negacji, ktorym jest znak !
22:23 <@Nekrataal> ++ to operator inkrementacji, czyli zwiekszenia wartosci funkcji o 1
22:23 <@Nekrataal> przykladowo
22:23 <@Nekrataal> $a = 1;
22:23 <@Nekrataal> $a++;
22:23 <@Nekrataal> print $a;
22:23 <@Nekrataal> wypisze nam na ekran wartosc 2
22:24 <@Nekrataal> analogicznie do niego, dziala operator dekrementacji --
22:24 <@Nekrataal> (minus minus)
22:24 <@Nekrataal> w php mozna rownierz zrobic cos takiego:
22:24 <@Nekrataal> $a = 5;
22:24 <@Nekrataal> $a += 5;
22:25 <@Nekrataal> teraz $a bedzie miala wartosc 10
22:25 <@Nekrataal> analogicznie jest z -=
22:25 <@Nekrataal> do laczenia 2uch stringow (napisow), sluzy nam operator .=
22:25 <@Nekrataal> dziala tak:
22:26 <@Nekrataal> $a = 'as';
22:26 <@Nekrataal> $a .='df';
22:26 <@Nekrataal> print $a;
22:26 <@Nekrataal> wysweitli nam caly napis 'asdf'
22:26 <@Nekrataal> chyba tyle, k pytania ?
22:26 < shd> czy da sie konstruowac np. if (!zmienna) {echo "blah";}
22:26 < Nome> tak
22:26 < shd> ?
22:26 <@Nekrataal> tak da sie
22:26 < Nome> ja mialem telefon, a wiec od poczatku:D
22:26 < Reqamst> cztli np, mozna zrobic tak :
22:27 < Reqamst> $a = 'cos'
22:27 < Nome> bo na ostatnim/pierwszym wykladzie bylo, z eplik mozna w byle jakim rozszerzeniu dac
22:27 < Reqamst> echo $a;
22:27 < Nome> a tearz phps to nie dziala, a wiec trza tylko phgp dac?
22:27 <@Nekrataal> Nome, tak, ale wtedy trzeba w configu web servera odpowiednio ustawic ;>
22:27 < Reqamst> $a .= 'cos';
22:27 < Reqamst> echo $a
22:27 < Nome> *.php, bo ja widze stronik one maja *.html a i tak maja w sobie skrypoty PHPO. jak to sie dzieje?
22:27 < Reqamst> i wyswietli sie coscoscos ?
22:28 <@Nekrataal> Reqamst, tak
22:28 < Nome> Nekrataal rozumiem. Thx
22:28 <@Nekrataal> Nome, mozesz ustawic np. w .htaccess aby interpretator interpretowal dowlone rozsezrzenie jako php
22:28 <@Nekrataal> moze to byc .php moze to byc .html
22:28 < Nome> iem
22:28 <@Nekrataal> a moze to byc .asdf
22:28 <@Nekrataal> co chcesz ;>
22:29 < shd> do kogo sie zglaszac z checia wygloszenia wykladu?
22:29 < Nome> a czy jak mam konto na platnym serwie to tez tak moge, czy to tylko amdin z hostingu tym zarzadza?
22:29 <@Nekrataal> shd, do gynvaela
22:29 < shd> ok
22:29 <@Nekrataal> Nome, to zalezy czy oferuja ci dosteep do .htaccess
22:29 <@Nekrataal> czy nie masz zablokowanego, or sth
22:29 < Nome> rozumiem
22:29 <@Nekrataal> raczej powinienes moc ;>
22:29 < GynAway> shd: priv jak cos
22:30 <@Nekrataal> k, go dalej ?
22:30 < shd> tak
22:30 < Nome> kontinue plis
22:30 <@Nekrataal> wczesniej wspominalem o operatorze ===
22:30 <@Nekrataal> teraz bedzie o nim
22:31 <@Nekrataal> oprocz wartosci, sprawdza on rownierz typ
22:31 <@Nekrataal> dla przykladu
22:31 <@Nekrataal> jezeli damy
22:31 <@Nekrataal> if ( 5 = '5' ) to bedzie to prawda
22:31 <@Nekrataal> if ( 5 == '5' ) to bedzie to prawda
22:31 <@Nekrataal> natomiast gdy damy if ( 5 === '5' ) to bedzie falsz, poniewaz wartosci te roznia sie typem
22:32 <@Nekrataal> ta pierwsza to liczba, ta druga to strong
22:32 <@Nekrataal> przyklad znajduje sie tutaj:
22:32 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.3.phps
22:32 <@Nekrataal> skrypt w dzialaniu, tutaj:
22:32 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.3.php
22:32 <@Nekrataal> ostatni warunek, moze wygladac troche dziwnie
22:32 <@Nekrataal> if ( 5 === (int)"5" )
22:33 <@Nekrataal> czym jest to magiczne (int) ?
22:33 <@Nekrataal> to tak zwane rzutowanie, czyli wymuszona przez programiste zmiana typu na inny
22:33 <@Nekrataal> niz jest rzeczywiscie
22:33 <@Nekrataal> w tym konkretnym przypadku oszukujemy program, iz nasz string to tak naprawde liczba
22:34 <@Nekrataal> warunek wiec jest prawdziwy
22:34 <@Nekrataal> standardowo, pytania ?
22:34 < crook> "if ( 5 = '5' ) to bedzie to prawda" co to jest?
22:34 < crook> to wywali parse error
22:34 <@Nekrataal> to jest moja pomylka
22:34 <@Nekrataal> patrz na ta linijke nizej
22:34 <@Nekrataal> ;>
22:35 < Nome> no wlasnie
22:35 < crook> ok, myslalem, ze dwa maja byc poprawne
22:35 <@Nekrataal> nie nie, sorx
22:35 < Nome> ja mialem podbnie przy formularzu
22:35 <@Nekrataal> ;>
22:35 < Nome> dalem bez ' ' i mialem error:D
22:35 < Nome> ale czym sie rozni
22:35 < Nome> taki cudzyslow: "" od ''
22:35 <@Nekrataal> k, rozumiecie idee === oraz rzutowania ? :>
22:35 < Nome> bo rozni sie, tez moze nam error'a wywalic
22:36 <@Nekrataal> ok, zaraz wytlumacze roznice miedzy "" a ''
22:36 < Nome> thx
22:36 <@Nekrataal> k, czyli zadnych pytan na temat przykladu nr 3 ?
22:36 < Nome> zadnych
22:36 < Nome> let's go
22:37 <@Nekrataal> wezmy na przyklad
22:37 <@Nekrataal> $zmienna = 'asdf'
22:37 <@Nekrataal> print 'nasza zmienna ma wartosc $zmienna'.<br />;
22:38 <@Nekrataal> a pozniej
22:38 <@Nekrataal> print "nasza zmienna ma wartosc $zmienna".<br />;
22:39 <@Nekrataal> w pierwszym przypadku, gdy uzyjemy apostrofu, na ekran zamiast pozadanego napisu: nasza zmienna ma wartosc asdf
22:39 <@Nekrataal> ujrzymy
22:39 <@Nekrataal> nasza zmienna ma wartosc $zmienna
22:39 <@Nekrataal> dzieje sie tak daltego, ze php nie parsuje tekstu zawartego miedzy 2ma znakami apostrofu
22:40 <@Nekrataal> linijka z cudzyslowiem wypisze nam pozadany tekst
22:40 <@Nekrataal> to tak krociutko, lapiecie ?
22:40 < Nome> yy
22:40 < Nome> czyli taki ktrotki kodzik:
22:40 < crook> hmm, czemu <br /> jest tak zapisane?
22:40 < shd> jak w takim razie wpisac zeby wypisywal zawartosc $zmienna
22:40 < szukaBackSlasza> o, nie ma +b (:
22:40 < crook> to wywali parse error
22:40 <@Nekrataal> grrr
22:41 <@Nekrataal> znwu sie typelm z rospedu ;>
22:41 < faxe> php parsuje 'taki ciag' - musi zareagowac na ' i \ d:
22:41 <@Nekrataal> wywalcie to br ;>
22:41 < Nome> <?php $a="ala" echo"$a ma kota"; ?> nam nie wyswietli wartosci zmiennej?
22:41 <@Nekrataal> wysweitli
22:41 < Dragonik> nie łapiemy :/
22:41 < Nome> :D
22:41 <@Nekrataal> kurcze, moment
22:41 < Nome> wlasnie
22:41 <@Nekrataal> napisze przyklad ;>
22:41 < shd> qrcze
22:41 < Nome> oki
22:41 < Dale^dol> jak dacie '' to nie bierze pod uwage zmiennych
22:42 < shd> a jak "" to bierze?
22:42 < Dale^dol> tak
22:42 < Nome> jak damy: '' czy7 ""
22:42 < Nome> ?
22:42 < shd> no to rozumiem :)
22:42 < late> zdazylem na kawalek kursu?
22:42 < Nome> to rozumiem:D
22:42 < Nome> myslalem na odwrot:D
22:42 < Dale^dol> :)
22:42 < Nome> late jestes later ale zdazyles:s
22:42 < Nome> :S
22:42 < Dragonik> <?php $a="ala" echo"$a ma kota""; ?>
22:42 < Dragonik> perwsza wyswietli a drugiej nie ?
22:43 < Prus> to w końcu jak? ;)
22:43 < late> sensei sory za spoznienie ;>
22:43 < crook> wywali parse error :P
22:43 <@Nekrataal> k
22:43 < Dale^dol> na koncu masz ""
22:43 <@Nekrataal> patrzcie
22:43 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/asdf.phps
22:43 <@Nekrataal> mamy taki kod
22:43 <@Nekrataal> tutaj efekt dzialania
22:43 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/asdf.php
22:43 <@Nekrataal> print "nasza zmienna to $zmienna";
22:43 <@Nekrataal> w tym przypadku
22:44 <@Nekrataal> nasza $zmienna zostanie podmieniona na wartosc ktora posiada
22:44 < Evill> if ($a) { echo "$a ma koana" } else { echo " a kot ma przejebane" } ; moze tak byc ?
22:44 <@Nekrataal> dzieje sie tak poniewaz uzylismy znaku cudzyslowia
22:44 <@Nekrataal> Evill, tak moze
22:44 < Nome> kumam juz;-)
22:44 < Evill> ;)
22:44 <@Nekrataal> print 'nasza zmienna to $zmienna';
22:44 <@Nekrataal> tutaj wypisze nam caly napis jak leci
22:44 < Prus> ok
22:44 <@Nekrataal> print "nasza zmienna to \$zmienna";
22:44 <@Nekrataal> o tym jeszcze nie bylo
22:45 < faxe> uzywaj echo zamiast print. print jest wolniejsze d:
22:45 <@Nekrataal> uzylismy tutaj znako ucieczki \
22:45 < shd> dobra
22:45 < shd> mozna chyba dalej
22:45 < Dragonik> Czym rozni sie echo od print ? :P
22:45 < Nome> oki a pytanko jeszce co do if else
22:45 < faxe> print zwraca wartosc
22:45 <@Nekrataal> powoduje on, ze to co jest po nim, rownierz nie bedzie parsowane ;>
22:45 <@Nekrataal> a wiec nie bedzie podmienione na wartosc
22:45 < faxe> http://pl2.php.net/manual/pl/function.echo.php
22:45 < pixelx> kurwa
22:45 < pixelx> nie przerywaj
22:45 < pixelx> bylo ostatnio o print /echo
22:45 < pixelx> ;>
22:46 < shd> mam tylko 15 minut;/
22:46 <@Nekrataal> Nome, tak print i echo bylo ostatnio
22:46 < Dale^dol> shd: logi sa
22:46 <@Nekrataal> print "nasza zmienna to \$zmienna";
22:46 <@Nekrataal> grr
22:46 <@Nekrataal> roznica jest taka
22:46 < Nome> ?
22:46 <@Nekrataal> ze print w przypadku wypisania tekstu zwraca 1
22:46 < shd> ale z logow nie taka przyjemnosc :)
22:46 <@Nekrataal> echo za to nie zwraca nic
22:46 <@Nekrataal> do tego echo jest szybsze w dzialaniu
22:46 < Dragonik> <?php
22:46 < Dragonik> $zmienna = 'asdf';
22:46 < Dragonik> print "nasza zmienna to $zmienna";
22:46 < Dragonik> print '<br />';
22:46 < Dragonik> print 'nasza zmienna to $zmienna';
22:46 < Dragonik> print '<br />';
22:46 < Dragonik> print "nasza zmienna to \$zmienna";
22:46 < Dragonik> ?>
22:46 < Dragonik> a mozna by zamiast print tutaj uzyc echo ?
22:46 < Nome> a mma pytanie nawiasy klamrowe sa potrzebne?
22:46 <@Nekrataal> tak
22:47 < Nome> przy If else
22:47 < Nome> ?
22:47 <@Nekrataal> Nome, zalezy w ktorym miejscu
22:47 < Dragonik> a czym by sie to roznilo ?
22:47 <@Nekrataal> bo mozesz zrobic tak if ( 3>4) print 'asdf';
22:47 < Nome> if ($a) { echo "$a ma koana" } else { echo " a kot ma przejebane" } ; no w takim przuykladzie
22:47 <@Nekrataal> ale gdy do tego dodjaesz jeszcze else, badz elseif wypada uzyc ;p
22:47 <@Nekrataal> to jest ciekawostka, sprawdzcie sami ;>
22:48 < faxe> przed } stawia sie ;
22:48 <@Nekrataal> go dalej ?
22:48 < crook> tak
22:48 <@Nekrataal> teraz bedzie troche bardzo prostej artmetyki
22:48 <@Nekrataal> w koncu to nieodlaczny element kazdego jezyka ;p
22:48 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.4.phps
22:49 <@Nekrataal> efekt dzialania http://nekrataal.tenmei-pl.org/php_wyklady/1/1.4.php
22:49 <@Nekrataal> na skomentowanie zasluguja chyba jedynie 2 ustatnie funkcje
22:49 <@Nekrataal> pow oraz sqrt
22:49 <@Nekrataal> pow przyjmuje 2 parametry
22:50 <@Nekrataal> pierwszy to liczba
22:50 <@Nekrataal> a drugi to potega do ktorej ja podnosimy
22:51 <@Nekrataal> sqrt to pierwiastek kwadratowy z danej liczby
22:51 < Dragonik> no niby co mowisz masz racje ale jak to zlaczyc ze stroną www ?
22:51 < pixelx> podoba mi sie ;)
22:51 < Dragonik> i co to ma wspolnego ?
22:51 < Nome> arytmetyka wiec proste
22:51 <@Nekrataal> Dragonik, trzeba miec podstawy
22:51 < Nome> :D
22:51 <@Nekrataal> zeby moc zrobic wieksze rzeczy
22:51 <@Nekrataal> w kolejnych czesciach bedziemy stopniowo pisac
22:51 < Nome> to s apodstawy a wiec lepiej sie tego nauczyc
22:51 <@Nekrataal> jakies sytemy newsow
22:51 <@Nekrataal> ksiegi gosci
22:51 < pixelx> Dragonik po to zeby nie liczyc na palcach i wpisywac jak w htmlu tylko zeby sie samo robilo ;]
22:51 <@Nekrataal> liczniki
22:51 <@Nekrataal> etc
22:51 < pixelx> ^^
22:51 < Nome> aha no i moze bys nam pokazal jak to polaczyc z byle jakim polem textowym?
22:52 < shd> hello world z grami w c++ tez niema nic wspolnego :)
22:52 < Nome> aby np. byl jakis label
22:52 < pixelx> ee
22:52 < Nome> i ja wpisuje wartosc do labela
22:52 <@Nekrataal> Nome, o tym bedzie na nastepnym wykladzie
22:52 < pixelx> czekajcie zaraz tutora do forma znajde :P
22:52 < pixelx> to wam wkleje
22:52 < Nome> i on ma przywiazana wartosc to ejst value podajze
22:52 < Dragonik> ok mozesz dalej :]
22:52 < Nome> i aby wyswietillo,
22:52 < Nome> aha okej Nekrataal
22:53 <@Nekrataal> teraz kolejny nieodlaczny element kazdego jezyka
22:53 <@Nekrataal> funkcja
22:53 <@Nekrataal> eklaracja wyglada tak
22:54 <@Nekrataal> function nazwa_funkcji ($parametr, $inny_parametr) { }
22:54 <@Nekrataal> jak widzicie funkcja nie ma zdeklarowanego typu
22:54 <@Nekrataal> w tym przypadku moze przyjac 2 parametry
22:54 <@Nekrataal> oraz nie zwraca zadnej wartosci
22:55 <@Nekrataal> do zwracania wartosci przez funkcje, sluzy slowko kluczowe return
22:55 <@Nekrataal> juz sluze przykladem
22:55 <@Nekrataal> napiszmy sobie prosta funkcje, ktora bedzie pogrubiac nam tekst
22:55 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.5.phps
22:56 <@Nekrataal> nasza funkcja przyjmuje jeden parametr
22:56 <@Nekrataal> jest nim dowolny tekst
22:56 <@Nekrataal> za pomoca slowka return zwraca nam
22:56 <@Nekrataal> <b> [wartosc zmiennej $tekst] </b>
22:56 <@Nekrataal> <b></b> to oczywiscie htmlowe tagi odpowiedziane za pogrubianie
22:57 <@Nekrataal> sprawdzcie czy dziala u was
22:57 < Dragonik> hmm...
22:57 <@Nekrataal> efekt dzialania, jest widoczny tutaj: http://nekrataal.tenmei-pl.org/php_wyklady/1/1.5.php
22:57 <@Nekrataal> i pytajcie smialo
22:57 < Dragonik> teraz mozna zrobic tez inne teksty ?
22:57 <@Nekrataal> tak
22:58 < Dragonik> <?php
22:58 < Dragonik> function pogrubianie ( $tekst )
22:58 < Dragonik> {
22:58 < Dragonik> return '<b>'.$tekst.'</b>';
22:58 < Dragonik> }
22:58 < Dragonik> print 'to jest zwykly napis <br />';
22:58 < Dragonik> print pogrubianie('a to jest napis pogrubiony');
22:58 < faxe> nalezy zauwazyc, ze zmienne z bloku argumentow sa widoczne tylko w ciele funkcji
22:58 < Dragonik> print pogrubianie('blelele');
22:58 <@Nekrataal> tak, slusze faxe dopowiedzial
22:58 < Dragonik> ?>
22:58 <@Nekrataal> Dragonik, tak, bedzie dzialac ;>
22:58 < Dragonik> a jest jakies ograniczenie ?
22:58 <@Nekrataal> otrzymasz rownie pogrubione 'blebleble'
22:58 <@Nekrataal> ograniczenie w jakim sesie ?
22:59 < Dragonik> a zwykly tekst to print ('lele');
22:59 < Dragonik> :>
22:59 < faxe> jesli chce sie przekazywac mnostwo argumentow albo niewiadoma liczbe argumentow to lepiej stosowac tablice
22:59 <@Nekrataal> faxe, o tablicach bedzie za kilka chwil
22:59 <@Nekrataal> ;>
22:59 <@Nekrataal> co prawda dopiero wstep, ale bedzie
22:59 < Dragonik> mozemy dalej
23:00 < Reqamst> a jak wykorzystac fukncje piszac ja tylko w jednym dokumencie?
23:00 < Dragonik> a mozna generować funkcje ?
23:00 < Dragonik> losowo ?
23:00 < Reqamst> taka jakby biblioteke zrobic
23:00 < ^Klocek> naglowek ? :P
23:00 < Dale^dol> Dragonik: ?? po co ?
23:00 < Dragonik> nie wiem
23:00 <@Nekrataal> Reqamst, do tego sluzy znane z innych jezykow include
23:00 < shd> :)
23:00 <@Nekrataal> zaraz wam pokaze na czym to polega, moment
23:03 <@Nekrataal> k
23:03 <@Nekrataal> mamy plik
23:03 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/funkcja_pogrubianie.phps
23:03 <@Nekrataal> w pliku mamy zdeklarowana wczesniej przez nas napisana funkcje
23:04 <@Nekrataal> tutaj mamy drugi plik
23:04 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/wykorzystanie_include.phps
23:04 <@Nekrataal> zaczynajacy sie od funkcji include
23:04 <@Nekrataal> kaze ona parserowi php dolaczyc plik podany w jej argumencie
23:04 <@Nekrataal> w miejsce gdzie sie znajduje
23:05 <@Nekrataal> include ('funkcja_pogrubianie.php');
23:05 <@Nekrataal> zostanie 'zamieniona' na to co najduje sie w pliku funkcja_pogrubianie.php
23:05 <@Nekrataal> a wiec, nasza deklarace funkcji
23:05 <@Nekrataal> ulatwia to strasznie zycie, poniewaz w wielu dokumentach, nie musimy na nowo pisac tej samej funkcji
23:05 <@Nekrataal> tylko wystarczy jedno include
23:06 < pixelx> neko
23:06 < shd> :)
23:06 < pixelx> bedzie dzisiaj o operacji na plikach
23:06 <@Nekrataal> jasne ? :>
23:06 <@Nekrataal> dzisiaj chyba juz nie zdazymy
23:06 < pixelx> +w/r itd?
23:06 < pixelx> ;>
23:06 <@Nekrataal> ale nastepnym razem juz tak
23:06 < pixelx> a co bedzie dzisiaj jeszcze?
23:06 <@Nekrataal> przy okazji pisania jakiegos licznika odwiedzin
23:06 < Reqamst> a jest jeszcze cos podobnego do include
23:06 < Dale^dol> include ("nazwa.php"); tez moze byc
23:06 <@Nekrataal> tablice i wybrane funkcje
23:06 < Reqamst> ale inaczej interpretuje dolaczany kod
23:06 < Reqamst> co to jest?
23:06 <@Nekrataal> nie nie
23:07 <@Nekrataal> tu juz nie ma roznicy
23:07 <@Nekrataal> roznica byla by gdybys dal include (
23:07 <@Nekrataal> ...
23:07 < pixelx> require_once("plik.php"); includuje raz
23:07 < pixelx> tak odemnie ;p
23:07 <@Nekrataal> roznica byla by gdybys dal include ("$zmienna") ..
23:07 <@Nekrataal> trzeba dopowiedziec jeszcze
23:07 <@Nekrataal> ze jezeli uzywamy funkcji include
23:08 <@Nekrataal> do dolczenia pliku
23:08 <@Nekrataal> ktorego nie ma
23:08 <@Nekrataal> php wygeneruje blad
23:08 <@Nekrataal> (nic nie dolaczy i wpisze ostrzezenie)
23:08 <@Nekrataal> ale nie przerwie dzialania skryptu
23:08 <@Nekrataal> i wykona sie on do konca
23:08 <@Nekrataal> inaczej jest jezeli zamiast include uzyjemy require
23:08 <@Nekrataal> wtedy w przypadku nie odalezienia pliku podanego w argumeencie
23:09 <@Nekrataal> dzialanie pliku zostanie przerwane
23:09 <@Nekrataal> anagolczinie do tego dziala require_once i include_once, z ta roznica ze za pomoca tych funkcji nie da sie juz 2 razy dolaczyc (np. przez przypadek) tego samego pliku
23:09 <@Nekrataal> jest to nieco bezpieczniejsze ;>
23:10 < pixelx> ;>
23:10 <@Nekrataal> pytania ?
23:10 < crook> "uire() and include() are identical in every way except how they handle failure. include() produces a Warning while require() results in a Fatal Error."
23:10 < faxe> sprawdzcie, co zrobi: include __FILE__;
23:10 < faxe> (;
23:10 < crook> "require() and include() are identical in every way except how they handle failure. include() produces a Warning while require() results in a Fatal Error."
23:10 <@Nekrataal> mhm
23:10 <@Nekrataal> dokladnie tak powiedzialem ;>
23:11 <@Nekrataal> warto patrzec w manual
23:11 <@Nekrataal> to jest nieocenione zrodlo pomocy
23:11 < shd> jak msdn :P
23:11 <@Nekrataal> tia ^^;
23:11 <@Nekrataal> k, jedziemy dalej ?
23:11 < shd> tak
23:11 < pixelx> ta
23:11 <@Nekrataal> czy jakies uwagi, watpliwosci jeszcze ktos ma ?
23:11 <@Nekrataal> k
23:12 <@Nekrataal> teraz bedzie troche o tablicach
23:13 <@Nekrataal> jako ze zmienne nie nadaja sie do przechowywania wiekszej ilosc danych
23:13 <@Nekrataal> wymyslono tablice
23:13 <@Nekrataal> deklaracja wyglada tak:
23:13 <@Nekrataal> $nazwa_tablicy[index] = 'wartosc'
23:14 <@Nekrataal> np. $imie[0] = 'ala';
23:14 <@Nekrataal> $imie[1] = 'zenek';
23:14 <@Nekrataal> teraz przy jednym ogniu upieczemy sobie jeszcze 2 petle ^^
23:14 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.6.phps
23:14 <@Nekrataal> przyklad moze niektorym wydac sie nieco skomplikowany
23:15 <@Nekrataal> ale zaraz wszystko postaram sie objasnic
23:15 <@Nekrataal> na pocatku widzimy deklarowanie kolejnych pol tablicy jakimis wartosciami
23:15 <@Nekrataal> pozniej mamy $ilosc_elementow = count ( $nasza_tablica );
23:15 <@Nekrataal> count() to standardowa funkcja
23:15 <@Nekrataal> ktora podaje ilosc ilementow tablicy podanej jako parametr
23:16 <@Nekrataal> w tym przypadku jest to rownoznaczne z $ilosc_elementow = 5
23:16 <@Nekrataal> (nalezy zauwazyc ze indexy zaczynaja sie od 0)
23:17 <@Nekrataal> dalej widzimy petle for
23:17 <@Nekrataal> for ( $i = 0; $i <= $ilosc_elementow; $i++ )
23:18 <@Nekrataal> na poczatku deklarujemy w niej zmienna $i o wartosci 0
23:18 <@Nekrataal> dalej mamy warunek
23:18 <@Nekrataal> dopoki $i jest mneijsze badz rowne ilosci elementow, warunek bedzie spelniony
23:18 <@Nekrataal> na koncu inkrementujemy zmienna $i
23:18 <@Nekrataal> czuyli zwiekszamy jej wartosc
23:19 <@Nekrataal> dalej w ciele funkcji widzimy print $nasza_tablica[$i]
23:20 <@Nekrataal> jako ze $i na poczatku mialo wartosc 0, dostaniemy print $nasza_tablica[0]
23:20 <@Nekrataal> nasza tablica, z indexem 0 ma wartosc 'qwer'
23:20 <@Nekrataal> i to tez zostanie wypisane na ekran
23:20 <@Nekrataal> w kolejnych przebiegach petli $i bedzie zwiekszane
23:20 <@Nekrataal> a print wypisywal kolejne elementy
23:21 <@Nekrataal> do momentu w ktorym warunek przestanie byc prawdziwy
23:21 <@Nekrataal> narazie tyle, o drugiej petli bedzie za chwile
23:21 <@Nekrataal> pytania ?
23:21 < Dragonik> ej ale co to jest
23:21 < Dragonik> for ( $i = 0; $i <= $ilosc_elementow; $i++ )
23:21 < Nome> :d
23:21 < Nome> no petla
23:21 < faxe> petla odwoluje sie do nieistniejacego pola w tablicy: $nasza_tablica[5]
23:21 < Dragonik> to $i+
23:21 < Nome> dopoki nie spelni sie warunek to bedzie kontynuacja:D
23:21 <@Nekrataal> faxe ma racje
23:21 <@Nekrataal> ;>
23:22 < faxe> powinno byc ..; $i< $ilosc; ...
23:22 <@Nekrataal> faxe, tak, zgadza sie
23:22 < Dragonik> nie czaje tej petli :/
23:22 <@Nekrataal> hmm to moze prostszy przyklad na uzycie petli
23:22 <@Nekrataal> zaraz napisze
23:23 < Dale^dol> dla $i = 0 dopuki $i jest mniejsze od $ilosc wykonuj $i + 1 i kod ponizej
23:23 < Dale^dol> Dragonik: to do Ciebie ;p
23:23 < faxe> ostatnie 2 na odwrot
23:23 < Dale^dol> ;p
23:23 < Dale^dol> ale mniejwiecej ;p
23:23 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/petla.php
23:23 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/petla.phps
23:24 < Dale^dol> po polskiemu tak to brzmi
23:24 < faxe> (A; B; C) A wykona sie przed rozpoczeciem petli, B jest warunkiem dzialania petli, C wykonywane po kazdym przebiegu petli
23:24 < faxe> mozna pominac dowolny element tego bloku zostawiajac jednak srednik
23:25 <@Nekrataal> Dragonik, lapiesz ?
23:25 < Dale^dol> faxe: dla mnie to nie do pomyslenia ;p w c sie kompilator czepia ;p
23:25 <@Nekrataal> dopoki wartosc $i jest mniejsaz od 5, zwikszami $i i wpisujemy wartosc $i na ekran
23:25 < Reqamst> ej, a zawsze trzeba uzywac $i ?
23:25 <@Nekrataal> nie
23:25 < faxe> Dale^dol: co? to pomiecie? w C tez mozna pomijac
23:25 <@Nekrataal> macie pleno dowolnosc
23:25 < Nome> mzoesz
23:25 < Nome> byle co
23:25 <@Nekrataal> *pelna
23:26 < faxe> w jenzyku programowaia C
23:26 < Dale^dol> faxe: wiem ale jak sie da -Wall i -pedantic to masz warning ;p
23:26 <@Nekrataal> robicie mi offtopic ;p
23:26 < Nome> a ja teraz to juz nic nie kumam;/
23:26 < Dale^dol> sry
23:27 < Nome> no wlasnie a wsyztsko przez offtpy
23:27 <@Nekrataal> Nome, spojrz na ten prostszy przyklad
23:27 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/petla.phps
23:27 < Nome> tu ma byc PHP_PODSTAWY
23:27 * Dale^dol siedzi juz cicho
23:27 < Nome> A nie ADVANCED
23:27 < pixelx> to proste :P
23:27 <@Nekrataal> na poczatek slowo kluczowe for
23:27 < pixelx> trzeba tylko pocwiczyc samemu
23:27 <@Nekrataal> pozniej przypisanie do $i wartosci 0
23:27 <@Nekrataal> oraz srednik
23:28 <@Nekrataal> po sredniiku warunek
23:28 < Nome> nakrataal ja sobie poradze, bo musze sie rozdowic, i nie mam spokoju niesttey aby siasc i czytac przy Krasnalu i edhtml'u wpisujac source:D
23:28 < Nome> *rozdwoic
23:28 <@Nekrataal> k
23:28 <@Nekrataal> to ktos jeszcze tego nie lapie ?
23:28 < Nome> a raczej rzotroic:D
23:28 < pixelx> ;)
23:28 < Nome> jak to jeszce?
23:28 < Nome> ja lapie
23:28 <@Nekrataal> kk
23:29 < Dragonik> hmm
23:29 < Nome> to znaczy jestem raczej pewny ze zalapie
23:29 <@Nekrataal> Dragonik, zrozumiales ?
23:29 <@Nekrataal> pytaj smialo ;>
23:29 < Dragonik> a czego po for ( $i = 0; $i <= 5; $i++) nie ma srednika ?
23:29 <@Nekrataal> poniwaz nizej maz nawiasy klamrowe
23:29 <@Nekrataal> nie dajesz go tam, tak samo jak nie dawales po if, else czy elseif
23:30 < Dragonik> aha
23:30 < Dragonik> ok
23:30 < faxe> for() nie jest poleceniem a deklaracja pentli - podobnie jak funkcja
23:30 < Dragonik> dlugo jeszcze to bedzie trwalo ?
23:30 <@Nekrataal> zalezy od was
23:30 < Dragonik> «Nekrataal» wiesz troszke rzeczy nie czaje bo mam dopiero 12 lat :OP
23:30 <@Nekrataal> ?;p
23:30 < pixelx> o lol.
23:30 < Dragonik> «Nekrataal» i nie wszystko czaje
23:30 < Dragonik> ok dalej
23:30 <@Nekrataal> e ?
23:30 < Dale^dol> Dragonik: poproobuj
23:30 < pixelx> hm
23:31 < Dale^dol> i zrozumisze
23:31 < Reqamst> nie pisz kolorami!
23:31 < pixelx> bez kolorkoow prosze ;>
23:31 <@Nekrataal> dobra, wracamy do starego przykladu
23:31 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.6.phps
23:32 <@Nekrataal> ci ktorzy zrozumieli
23:32 <@Nekrataal> beda wiedziec, ze nasza petla
23:32 <@Nekrataal> bedzie po kolei wypisywac wartosci talicy o kolejnych indexach
23:33 <@Nekrataal> bedzie print $nasza_talica[0] //wypisze qwer
23:33 <@Nekrataal> dalej bedzie print $nasza_talica[1] //wypisze asdf
23:33 <@Nekrataal> i tak do konca
23:33 <@Nekrataal> nizej mamy drugij rodzaj petli
23:33 <@Nekrataal> nazywa sie while
23:33 <@Nekrataal> while ( $ilosc_elementow-- )
23:34 <@Nekrataal> skladnia while ( warunek ) { }
23:34 <@Nekrataal> kazda nie zerowa wartosc zostaje uznana za prawde
23:34 <@Nekrataal> pobralismy na poczatku skryptu ilosc elemntow tablicy
23:35 <@Nekrataal> teraz bedziemy ja zmniejszac
23:35 <@Nekrataal> i printem wysweitlac kolejne wartosci
23:36 <@Nekrataal> interpretator php widzi to tak
23:36 <@Nekrataal> na poczatku mamy while ( 5 ) co jest prawda
23:36 <@Nekrataal> przechodzi do tego co znajduje sie pomiedzy { a }
23:36 <@Nekrataal> amy tam print $nasza_tablica[$ilosc_elementow]
23:36 <@Nekrataal> podstawia sobie $nasza_talbica[5]
23:37 <@Nekrataal> 5ty elemnt to 'tyui'
23:37 <@Nekrataal> wypisuje go na ekran
23:37 <@Nekrataal> wraca na poczatek, odejmuje od 5 jeden, zostaje 4
23:37 <@Nekrataal> podstawa $nasaz_tablica[4] i wypisuje
23:37 <@Nekrataal> i tak do momentu osiagniecia 0, wtedy warunek zostaje uznany za nie spelniony
23:38 <@Nekrataal> i interpretator php przerywa wykonywanie funkcji
23:38 <@Nekrataal> *i interpretator php przerywa wykonywanie petli
23:38 < Dragonik> i jaki to bedzie to caly kod ?
23:38 <@Nekrataal> nie wiem czy przedstawilem do wystarczajaco jasno
23:38 < Dragonik> tzn jak zlaczymy to w calosc
23:38 < Dragonik> i troszke haotycznie to jest napisane
23:39 < faxe> $ilosc_elementow-- < to jest jednoczesnie zwrocenie wartosci zmiennej i obnizenie jej o 1
23:39 <@Nekrataal> mam goraczke, sorry ;p
23:39 <@Nekrataal> $nasza_tablica[0] = 'qwer';
23:39 <@Nekrataal> $nasza_tablica[1] = 'asdf';
23:39 <@Nekrataal> $nasza_tablica[2] = 'asdf';
23:39 <@Nekrataal> $nasza_tablica[3] = 'zxcv';
23:39 <@Nekrataal> $nasza_tablica[4] = 'tyui';
23:39 <@Nekrataal> $ilosc_elementow = count ( $nasza_tablica );
23:39 <@Nekrataal> while ( $ilosc_elementow-- )
23:39 <@Nekrataal> {
23:39 <@Nekrataal> print $nasza_tablica[$ilosc_elementow].'<br />';
23:39 <@Nekrataal> }
23:39 <@Nekrataal> warto zauwazyc
23:39 < Dragonik> i wyswietli 5 ?
23:39 <@Nekrataal> ze pierwsza petla, miala swoj licznik $i, ktory liczyl wartosci od 0 w gore
23:40 <@Nekrataal> dzieki czemu elementy byly wysweitlane po kolei
23:40 <@Nekrataal> w ktorgiej petli, jedziemy od 5 w dol
23:40 <@Nekrataal> czyli wszystko bedzie wysweitlone od tylu
23:40 < Dragonik> gdzie tutaj jest petla ?
23:40 <@Nekrataal> while () to petla
23:40 < Dragonik> a
23:40 < Dragonik> $nasza_tablica[0] = 'qwer';
23:40 < Dragonik> [9:37pm] <@Nekrataal> $nasza_tablica[1] = 'asdf';
23:40 < Dragonik> [9:37pm] <@Nekrataal> $nasza_tablica[2] = 'asdf';
23:40 < Dragonik> [9:37pm] <@Nekrataal> $nasza_tablica[3] = 'zxcv';
23:40 < Dragonik> [9:37pm] <@Nekrataal> $nasza_tablica[4] = 'tyui';
23:40 < Dragonik> [9:37pm] <@Nekrataal> $ilosc_elementow = count ( $nasza_tablica );
23:40 < Dragonik> [9:37pm] <@Nekrataal> while ( $ilosc_elementow-- )
23:40 < Dragonik> [9:37pm] <@Nekrataal> {
23:40 < Dragonik> [9:37pm] <@Nekrataal> print $nasza_tablica[$ilosc_elementow].'<br />';
23:40 < Dragonik> [9:37pm] <@Nekrataal> }
23:40 < Dragonik> [9:37pm] <@Nekrataal> warto zauwazyc
23:41 < Dragonik> ale nie podales calego kodu :/
23:41 <@Nekrataal> dodajesz <?php ?> i bedzie dzialac
23:41 <@Nekrataal> wyciolem poprzednia petle for
23:41 <@Nekrataal> zeby wam nie mieszac
23:41 < Dragonik> ehhh...
23:42 <@Nekrataal> jeszcze raz
23:42 < Dragonik> to bedzie sie zaczynalo tak:
23:42 < Dragonik> <?
23:42 < Dragonik> while ()
23:42 < Dragonik> tablice itp
23:42 <@Nekrataal> ?
23:42 < Dragonik> a gdzie okreslenie tego ze od 0 w wzwyz
23:42 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/1.6.phps
23:42 <@Nekrataal> ..
23:42 <@Nekrataal> po porstu wytnij ten fragment z for
23:42 <@Nekrataal> 3 linijki
23:43 < Vengeance> jak dobrze ze na moim wykladzie nikt nic nie kumal :D przynajmniej pytan nie bylo :>
23:43 <@Nekrataal> hmm, ktos zrozumial jak dzialaja for i while ?;p
23:43 < Vengeance> jaaa ;]
23:43 < Dragonik> moglbys porownac ?
23:44 <@Nekrataal> while ( warunek ) { //blok kodu php }
23:44 <@Nekrataal> jezeli warunek jest prawdziwy, wykunuje sie blok kodu
23:44 <@Nekrataal> kazda nie zerowa wartosc jest prawdziwa
23:44 <@Nekrataal> wiec jezeli mamy $a = 5; while ( $a-- ) { print $a; }
23:44 <@Nekrataal> skrypt wypisze nam
23:45 <@Nekrataal> 54321
23:45 <@Nekrataal> na pocatek parser zamieni to na while ( 5 ), co jest prawdziwe, wykona sie wiec print
23:46 <@Nekrataal> pozniej wartosc zostaje zmniejszona do 4, co dalej daje warunek prawdziwy, i tak az do 0
23:46 <@Nekrataal> tym sposobem, wypisywane wartosci, beda w wysweitlane w kolejnosci malejacej
23:47 <@Nekrataal> deklaracja for wyglada tak: for ( $licznik; warunek; inkrementacja badz dekrementacja wartosci licznika ) { // blok kodu }
23:48 <@Nekrataal> dla przykladu damy for ( $i = 0; $i < 5; $++) { print $i; }
23:48 <@Nekrataal> na poczatek delarujemy zmienna $i o wartosci 0
23:48 <@Nekrataal> pozniej sprawdzamy prawdziwosc warunku
23:48 <@Nekrataal> 0 jest wieksze od 5
23:48 <@Nekrataal> wiec wykona nam sie blok kodu
23:49 <@Nekrataal> dla przykladu damy for ( $i = 0; $i < 5; $p++) { print $i; } tu jest literowka
23:49 <@Nekrataal> dla przykladu damy for ( $i = 0; $i < 5; $i++) { print $i; } tu jest literowka
23:49 <@Nekrataal> dalej, zwiekszami wartosc $i o jeden i wypisujemy
23:49 <@Nekrataal> i tak do momentu kiedy $i bedzie wieksze od 5
23:50 < ^Klocek> faxe to jest logiczne ze 43210 :)
23:50 < Dragonik> czkeaj
23:50 < ^Klocek> bo sie while warunek wykonuje
23:50 < ^Klocek> i zmienia wartosc zmiennej
23:51 < ^Klocek> ok
23:51 < Dragonik> no,
23:51 < ^Klocek> ide spac
23:51 < ^Klocek> cya
23:51 < GynAway> pa
23:51 < Dragonik> a jak zrobić zeby wyswietlilo ile jest elementów ?
23:51 < Dragonik> z tablic
23:51 < Dragonik> mamy $nasza_tablica[0] = 'qwer';
23:51 < Dragonik> $nasza_tablica[1] = 'asdf';
23:51 < Dragonik> $nasza_tablica[2] = 'asdf';
23:51 < Dragonik> $nasza_tablica[3] = 'zxcv';
23:51 < Dragonik> $nasza_tablica[4] = 'tyui';
23:51 <@Nekrataal> print count('nazwa_tej_tablicy');
23:52 < Dragonik> $nasza_tablica[4] = 'tyugdi';
23:52 < Dragonik> i jak zrobić tak, aby wyliczył nam ile jest tablic ?
23:52 < pixelx> dobra
23:52 < pixelx> pix czuje sie zmeczony
23:52 < pixelx> i ucieka
23:52 < pixelx> papa wszystkim
23:52 < Dragonik> while ( $ilosc_elementow-- )
23:52 < Dragonik> {
23:52 < Dragonik> print $nasza_tablica[$ilosc_elementow].'<br />';
23:52 < Dragonik> }
23:52 < Dragonik> ?
23:53 < Dragonik> tzn
23:53 < Dragonik> <?php
23:53 < Dragonik> $nasza_tablica[0] = 'qwer';
23:53 < Dragonik> $nasza_tablica[1] = 'asdf';
23:53 < Dragonik> $nasza_tablica[2] = 'asdf';
23:53 < Dragonik> $nasza_tablica[3] = 'zxcv';
23:53 < Dragonik> $nasza_tablica[4] = 'tyui';
23:53 < Dragonik> $ilosc_elementow = count ( $nasza_tablica );
23:53 <@Nekrataal> mieszasza strasznie
23:53 < Dragonik> while ( $ilosc_elementow-- )
23:53 < Dragonik> {
23:53 < Dragonik> print $nasza_tablica[$ilosc_elementow].'<br />';
23:53 < Dragonik> }
23:53 < Dragonik> ?>
23:53 <@Nekrataal> Dragonik i ?
23:53 < Dragonik> dobra wiem jak dziala while
23:54 <@Nekrataal> count ($nasza_talica) zwraca ilosc elementow i przypisuje ja do zmiennej $ilosc_elementow
23:54 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/petla2.phps
23:54 <@Nekrataal> http://nekrataal.tenmei-pl.org/php_wyklady/1/petla2.php
23:54 < Dragonik> AAA
23:54 < Dragonik> juz wiem, kazda tablica jest przypisana do zmiennej
23:54 < Dragonik> tutaj akurat jest $nasza_tablica
23:55 < Dragonik> a mozna zrobić tak:
23:55 <@Nekrataal> ktos jeszcze slucha, czy wszyscy popadali ?
23:55 < Dragonik> $nasza_tablicable[0] = 'qwer';
23:55 < Dragonik> $nasza_tablicahaha[1] = 'asdf';
23:55 < Dragonik> $nasza_tablica[2] = 'asdf';
23:55 < Dragonik> $nasza_tablica[3] = 'zxcv';
23:55 < Dragonik> $nasza_tablica[4] = 'tyui';
23:55 < Dragonik> rozne nazwy tablic ?
23:56 < Dragonik> ja Cie slucham i moja mama sie zainteresowala :)
23:56 <@Nekrataal> tak, rozne nazwy tablic
23:56 < Dragonik> i tak samo bedzie dzialalo ?
23:56 <@Nekrataal> w tym wypadku, skrypt nie bedzie dziala tak jak chcielismy
23:57 <@Nekrataal> poniewaz kazemy wypisywac wartosci tablicy o nazwe $nasza_tablica
23:57 < Dragonik> a jak mamy while ( $ilosc_elementow-- )
23:57 < Dragonik> {
23:57 < Dragonik> print $nasza_tablica[$ilosc_elementow].'<br />';
23:57 < Dragonik> }
23:57 <@Nekrataal> i zadnej innej
23:57 < Dragonik> to czego trzeba [$ilosc_elementow] ?
23:57 <@Nekrataal> zobacz masz na poczatku
23:57 < Dragonik> tzn tego nie rozumiem
23:57 <@Nekrataal> masz na poczatku
23:57 <@Nekrataal> $nasza_tablicable[0] = 'qwer'
23:57 <@Nekrataal> $nasza_tablicable[1] = 'asdf'
23:58 <@Nekrataal> jezeli chcesz wypisac wartosc tablicy $nasza_tablicable o indexie 0, wtedy wpiszesz print $nasza_tablicable[0]
23:58 <@Nekrataal> i tak samo w naszej petli
23:58 <@Nekrataal> print $nasza_tablica[$ilosc_elementow].'<br />';
23:59 <@Nekrataal> za ilosc elementow zostaje wstawiona cyfra 5
23:59 <@Nekrataal> dostajemy wiec print $nasza_tablica[5].'<br />';
23:59 <@Nekrataal> e przedobrzylem
23:59 <@Nekrataal> dostajemy wiec print $nasza_tablica[4].'<br />';
23:59 <@Nekrataal> a $nasza_tablica[4] ma wartosc 'tyui'
00:00 <@Nekrataal> to tez zostaje wypisane na ekran
00:00 <@Nekrataal> pozniej zmieszami wartosc $ilosc_elementow za pomoca --
00:00 <@Nekrataal> teraz ma wartosc 3
00:00 <@Nekrataal> dostajemy
00:00 <@Nekrataal> $nasza_tablica[3]
00:00 <@Nekrataal> ona ma wartosc 'zxcv' ktora wypisujemy
00:00 <@Nekrataal> i tak do 0
00:00 <@Nekrataal> lapiesz ?
00:00 < Dragonik> tak
00:00 <@Nekrataal> nyoo
00:01 < Dragonik> index to jest to [0] ?
00:01 <@Nekrataal> tak
00:01 <@Nekrataal> index to [0]
00:01 <@Nekrataal> [1]
00:01 < Dragonik> «Nekrataal» tak na progu to jakiego edytora uzywasz?
00:01 <@Nekrataal> [2]
00:01 <@Nekrataal> i tak dalej
00:01 < Dragonik> nom
00:01 < Dragonik> czaje czaje
00:01 < Jacek> jestem w ogromnym spóĽnieniem
00:01 < Dale^dol> Dragonik: ja polecam gvim'a '[
00:01 < Dale^dol> ;p
00:01 <@Nekrataal> Jacek, faktycznie bo konczymy raczej
00:01 <@Nekrataal> zlecialy 2h
00:02 < Dragonik> a to while i for to petle, no nie. To, jak zrobić aby pomiedzy nimi byl odstep
00:02 < Dragonik> <br/>
00:02 <@Nekrataal> print '<br />';
00:02 <@Nekrataal> ..
00:02 < Dragonik> oki
00:02 < Dragonik> dzieki bardzo :*
00:02 <@Nekrataal> n/p
00:02 < Dragonik> kiedy nastepny wyklad?
00:02 <@Nekrataal> huh
00:02 <@Nekrataal> hmm, z php wykladow jest cala seria
00:02 < Jacek> a kiedy będa logi?
00:02 <@Nekrataal> veng prowadzi OOP dla zaawansowanych
00:03 <@Nekrataal> anihilator prowadzi na zmiene ze mna
00:03 <@Nekrataal> w ciagu tygodnia na pewno cos bedzie
00:03 <@Nekrataal> sprawdzaj terminarz na www
00:03 < Dragonik> ok
00:03 < Vengeance> Nauredhel: moj byl 1, i nie wiadomo czy beda kolejne :D
00:03 <@Nekrataal> Jacek, niedlugo
00:03 < faxe> Loga ktos zrobil?
00:03 < Dragonik> tylko jeszcze jak mozna wykorzystac tablice na stronie www :/
00:03 <@Nekrataal> praktyczne zastosowania beda pozniej
00:03 < Dragonik> ok
00:03 <@Nekrataal> to jest bardzo bardzo bardzo potrzebne
00:04 < Dale^dol> taa
00:04 < faxe> Dragonik: znajdziesz pozniej - jak zaczniesz logicznie myslec tym jenzykiem
00:04 < Vengeance> wlasnie :D
00:04 <@Nekrataal> Vengeance, dlaczego nie mailoby byc wiecej ?
00:04 < Vengeance> bo ja nie umiem referowac ;p
00:04 <@Nekrataal> ja sie przekonalem wlasnie ze tez nie
00:04 <@Nekrataal> czytalem czesc Twojego logu
00:04 <@Nekrataal> i nie bylo zle
00:04 <@Nekrataal> ;>
00:04 <@Nekrataal> imo
00:05 <@Nekrataal> a wrecz calkiem przyjemnie
00:05 <@Nekrataal> ale jak widzisz, chyba najpierw trzeba zrealizowac te podstawy
00:05 <@Nekrataal> a pozniej przejsc do OOP
00:05 < Dragonik> ok
00:05 < Dragonik> OOP czyli ?
00:05 < Dale^dol> Nekrataal: tobie logi podeslac ?
00:05 < Jacek> jutro na wykładzie też nie będę :/
00:05 <@Nekrataal> dal, k
00:05 < Vengeance> Dragonik: nie wazne ;]
00:05 < Dale^dol> bo mam juz prawie gotowe
00:05 < faxe> czyli nie dla Ciebie Dragonik jeszcze
00:05 < Vengeance> wszystko w swoim czasie ;p
00:05 <@Nekrataal> Dragonik, to programowanie z wykorzystaniem klas i obiektow
00:05 < Dragonik> jaka jest strona wykladow bo mi wcielo wszystko :]
00:06 <@Nekrataal> temat dla zaawansowanych
00:06 < Vengeance> Ogromne Okropnosci Programistyczne
00:06 < Dragonik> aaa
00:06 <@Nekrataal> veng ;p
00:06 <@Nekrataal> teraz to wymysliles ?
00:06 < Vengeance> tia
00:06 < Vengeance> ;]
00:06 < Jacek> http://wyklady.vexillium.org/
00:06 <@Nekrataal> Dragonik, OOP to z angielskiego - Object-Oriented Programming
00:07 <@Prodigy> :]
00:07 <@Prodigy> po kursie?
00:07 <@Nekrataal> tak
00:07 <@Nekrataal> jakos przebrnelismy
00:07 < Blizzard> kurde co to jest te <br \>
00:07 <@Nekrataal> mam nadzieje ze ktos cos z tego wyniosl
00:07 <@Nekrataal> <br \>
00:07 < Jacek> nowa linia w HTML
00:07 < Blizzard> nie moge tego znalezc czy to sie rozni od <br>
00:07 < faxe> jakim cudem Fubu ma wyklad jeszcze jakis
00:07 < faxe> <br />
00:07 <@Nekrataal> to htmlowy znacznik przejscia do nowej lini
00:07 <@Prodigy> Nekrataal: jakbym nie sciagal to bym sc zaproponowal :P
00:07 <@Nekrataal> taki odpowiednik \n na konsoli
00:07 < Blizzard> hm
00:07 < Blizzard> ale czemu <br \
00:07 < Dragonik> ja tak to rozumiem ze <br /> uzywa sie w php :
00:07 < Blizzard> a nie <br>
00:08 < Jacek> bo to w XHTML
00:08 < faxe> zgodnosc z XHTML
00:08 <@Nekrataal> <br> to nie poprawny zapis
00:08 <@Nekrataal> ano
00:08 < Blizzard> mhm
00:08 < Blizzard> a oK;)
00:08 <@Prodigy> neko: powiedz mi jak robisz swoje 150? :>
00:08 <@Nekrataal> kazdy tag powinien byc zamkniety o otwarty
00:08 <@Nekrataal> np.
00:08 < faxe> Nekrataal: poprawny, jesli zamnknie sie </br>
00:08 <@Prodigy> (apm)
00:08 <@Nekrataal> <body> </body>
00:08 <@Prodigy> nikomu nie powtorze :P
00:08 < Blizzard> lol
00:08 < Blizzard> to br zamykamy:D
00:08 < Blizzard> ?
00:08 <@Nekrataal> dla tagow takich jak <br> i <hr> wymyslono <br /> i <hr />
00:08 <@Nekrataal> eee
00:08 < Dragonik> a hr to ?
00:08 < faxe> Blizzard: w XHTML wszystko
00:08 < Jacek> linia
00:08 <@Prodigy> horizontal line
00:08 <@Nekrataal> hr to linia
00:08 <@Nekrataal> tia ;>
00:08 < faxe> <br /> jest rownowazne <br></br>
00:08 <@Prodigy> nawet ja to wiem :P
00:09 < faxe> podstawy XML-a
00:09 < Blizzard> czyli <br/> kupa <br\>
00:09 < Blizzard> ?
00:09 <@Nekrataal> \
00:09 <@Prodigy> lol......
00:09 < Blizzard> eee
00:09 < faxe> skad ten \ !?
00:09 <@Prodigy> Blizzard: lookaj
00:09 <@Prodigy> ciiiii
00:09 < faxe> tylko /
00:09 <@Prodigy> ja powiem
00:09 <@Nekrataal> asdf <br \> asdf
00:09 <@Prodigy> jest taka akcja
00:09 <@Prodigy> ze kiedys sie stosowalo po prostu
00:09 < faxe> kufaaaaa no <br /> !!!!!!!!!!
00:09 <@Nekrataal> bo asdf <br></br> asdf wyglda bez sensu, prawda ?
00:09 <@Prodigy> <br>
00:09 <@Prodigy> i juz
00:09 <@Nekrataal> ^^;
00:09 < faxe> nie zaden --<br\>--
00:09 <@Prodigy> a teraz
00:09 < Blizzard> cicho
00:09 <@Nekrataal> zalezy czy piszecie zgodnie ze standardem czy nie
00:09 < Blizzard> Prodigy: mowi
00:09 <@Prodigy> ktos wpadl na pomysl
00:09 <@Nekrataal> mozecie pisac <br>
00:09 < Dragonik> to <br \> czy <br /> ?
00:09 <@Nekrataal> tez bedzie dzialac
00:09 <@Nekrataal> <br \>
00:09 <@Prodigy> ze skoro wszystko sie zamyka to i br tez
00:09 < Dragonik> ok
00:09 < Dragonik> dzieki
00:09 <@Prodigy> no i sie powinno robic
00:10 < Dragonik> papa :***************************************
00:10 < faxe> oh na Bogi !! <br />
00:10 <@Prodigy> <br></br>
00:10 < faxe> (:
00:10 <@Prodigy> ale jak neko powiedial
00:10 <@Nekrataal> cyah Dragonik
00:10 <@Prodigy> to wyglada glupio
00:10 <@Prodigy> i za duzo pisanie
00:10 <@Prodigy> a*
00:10 < faxe> podobnie jak <p></p>
00:10 < faxe> mozna zrobic <p />
00:10 < faxe> ale tylko w XHTML
00:10 <@Prodigy> faxe: pewnie tak
00:10 < faxe> nie zareczam, jak w trybie HTML potraktuja to przegladarki
00:10 < Blizzard> <p/>
00:10 < Blizzard> czy <p\><
00:10 < Blizzard> ah <p\>
00:10 < faxe> <p/>
00:11 < Blizzard> a w br?
00:11 < faxe> nie ma zadnego \ w XML-u
00:11 < Blizzard> to co pisaliscie <br\>
00:11 < Blizzard> ;>
00:11 < faxe> bo ktos sie nie znal
00:11 < faxe> albo zapomnial
00:11 <@Nekrataal> eee
00:11 < faxe> (;
00:12 <@Nekrataal> <br />
00:12 <@Nekrataal> faktycznie
00:12 <@Nekrataal> ;ppppppp
00:12 < faxe> bakslasz to wymysl microsoftu i nalezy go tepic
00:12 <@Prodigy> neko: nie odpowiedziales
00:12 <@Prodigy> jak robisz 150 apm? :>
00:12 <@Nekrataal> hm
00:12 < faxe> tylko MS windows stosuje \ do rozdzielania kataloguw w adresach
00:13 <@Prodigy> faxe: w Unixach jest /
00:13 <@Prodigy> :P
00:13 < Blizzard> faxe: abosulnie sie zgadzam
00:13 <@Nekrataal> 1sd2sd3sz4sh move move move move i wychodzi
00:13 <@Nekrataal> ;p
00:13 < Blizzard> ROX!
00:13 < Blizzard> /
00:13 < Blizzard> linux rox!
00:13 < faxe> no... / to nie \
00:13 < Blizzard> m$ sux@!
00:13 < Blizzard> :)
00:13 <@Prodigy> .......
00:13 <@Prodigy> Nekrataal: a od kiedy grasz?