Šiame straipsnyje mėginsiu padėti visiškai žaliems susipažinti su PHP.
Aptarsiu kaip iš formos pasiimti kintamuosius, kaip atrodo sąlygos sakiniai,
kaip ir kam reikalingi ciklai tik pagrindiniai kitų dabar tau tikrai nereikės :)(while ir for) ir dar šį tą.
Taigi kiekvienas pirmą kartą prisėsdamas prie PHP iš pradžių turi pasileisti
Apache apie jį ir jo instaliavimą galite rasti straipsnyje Apache, PHP, MySQL serveris Windows sistemoje su XAMPP
Gerai jei jau esi pasiruošęs tuomet galima pradėti. Susikurkime index.php failą
jį reiktų kurti htdocs aplanke (directory) jei naudojate Xampp.
Tada galite iškart pasileisti http://localhost/index.php tačiau jis dabar yra tuščias todėl einame atsidarome failą kurį ką tik sukūrei ir ten pradėsime rašyti…
Na ką pradedame gal nuo paprasčiausių dalykų visas PHP kodas rašomas tarp <?php ir ?> .Taigi bandykime išvesti tekstą į ekraną:
<?php // echo yra svarbiausia funcija skirta isvesti texta i ekrana :) aisku tai galima padaryti ir su print // bet vistek ji isveda texta ir tai yra gerai :) echo "Labas pasauli!!!"; ?>
Tai galima padaryti ir kitais būdais tačiau prie tokio paprasto pvz ilgai nesėdėsim. Todėl ką nors rimčiau mėginam padaryt,. Pvz.: sąlygos sakinių ir kintamųjų:
<?php // sintakse if ($foo) { echo "foo egzistuoja"; } elseif ($bar) { echo "foo nera bet bar yra"; } else { echo "nei foo nei bar nera"; } // --------------------- // Nustatom kintamajį $test $test = "labas"; // dabar patikrinsim kas ten jame yra if ($test == "labas") // jej $test yra labas { echo "Labas pasauli!!!"; } else { echo "labanakt pasauli"; } ?>
GET, POST panaudojimas
Galbūt dar turėčiau pridurti kaip perduot kintamuosius POST ar GET metodais reikėtų daryti. Tai yra labai paprasta susikuriat kokią nors HTML formą. Čia ne php todėl per daug nesigilinsime…
<form action="test.php" method="post"> <input name="pirmas" type="text" size="12" /><br /> <input name="antras" type="text" size="12" /><br /> <input name="submit" type="submit" value="Siunčiam" /> </form>
Šioje formoje duomenys bus perduodami POST metodu tai yra nurodoma čia:
- <form action=„test.php“ method=„post“>
Jei norėsite GET metodu perduot, rašysite GET vietoj POST. GET metodu galima perduoti ir per url pvz.:
POST metodu reikėtų rašyti taip:
<?php if (!$_POST['pirmas']) { $_POST['pirmas'] = "tuščias"; } if (!$_POST['antras']) { $_POST['antras'] = "tuščias"; } echo "pirmas: {$_POST['pirmas']}<br />"; echo "antras: {$_POST['antras']}<br />"; ?>
Tas pats tik GET metodu atrodytų taip:
<?php if (!$_GET['pirmas']) { $_GET['pirmas'] = "tuščias"; } if (!$_GET['antras']) { $_GET['antras'] = "tuščias"; } echo "pirmas: {$_GET['pirmas']}<br />"; echo "antras: {$_GET['antras']}<br />"; ?>
Ciklai
Nežinau kaip tiksliau išsireiškus ir paaiškinus tačiau gal suprasite. Ciklų yra įvairių tačiau aš pamėginsiu paaiškinti kaip veikia pagrindiniai ir svarbiausi.
Ciklas while
while (/* cia salygą */) { /* čia visa tai ką turi atlikti vygdant jusų ciklą */ }
Taigi jis yra naudojamas norit atlikti kažkokius veiksmus kol duomenys tenkins sąlygą. Galima rašyti ir ne vieną sąlygą bet kelias jei visos atitiks tuomet vykdys, o jei ne tai sustos…
<?php $i = 0; // nustatome kintamajį nes salyga bus neteisinga jej jis neegzistuos while ($i < 10) // jej musų kintamasis maziau uz 10... { echo 'i: ' . $i . '<br />'; // išvedam i ekraną rezultatą $i = $i + 1; // padidiname $i reikslmę vienetu } ?>
Manau viskas aišku taip pat galite ir nuo 10 iki 0 vykdyti arba kaip tik sugalvosit. Čia sąlygos rašomos kaip ir sąlygos sakinuose. Tai tiek apie while.
Ciklas for
<?php for (/*nustatom kintamajį*/;/*cia salygą*/;/*padidinam ar pamažinam kintamajį*/) { /* čia visa tai ką turi atlikti vygdant jusų ciklą */ } ?>
Šis ciklas yra naudojamas kai reikia vykdyti jį tiek kartų kiek reikia. Jį geriausia tam naudoti tačiau galima naudoti ir kaip while. Tai tiek dabar keletas pvz be komentarų nes ir jie patys daug pasako.
/* Pavyzdys 1 */ for ($i = 1; $i <= 10; $i++) { print $i; } /* Pavyzdys 2 */ for ($i = 1;;$i++) { if ($i > 10) { break; } print $i; } /* Pavyzdys 3 */ $i = 1; for (;;) { if ($i > 10) { break; } print $i; } /* Pavyzdys 4 */ for ($i = 1; $i <= 10; print $i, $i++);
Discussion