Professional Documents
Culture Documents
Pronaite web host s PHP i MySQL podrka Instalacija web posluitelj na svoje raunalo, a zatim instalirati PHP i MySQL
instalirati web posluitelj instalirati PHP instalirati baze podataka, kao to su MySQL
Slubena web stranica PHP (PHP.net) ima upute za instalaciju PHP: http://php.net/manual/en/install.php
PHP sintaksa
Prethodna Sljedea poglavlja
PHP skripta izvrava na posluitelju, a obian HTML rezultat je poslan natrag u pregledniku.
Primjer
<!DOCTYPE html> <html> <body> <h1>My first PHP page</h1> <?php echo "Hello World!"; ?> </body> </html>
Tranje primjer Svaki broj linija u PHP mora zavriti sa zarezom. Zarez je separator, a koristi se za razlikovanje jedan set instrukcija iz drugog. Uz PHP, postoje dva osnovna izjave izlazne teksta u pregledniku: jeka i ispis .
Komentari u PHP
Primjer
<!DOCTYPE html> <html> <body> <?php //This is a PHP comment line /* This is a PHP comment block */ ?> </body> </html>
Tranje primjer
PHP varijable
Prethodna Sljedea poglavlja
Varijable su "spremnici" za pohranu podataka: Primjer
<?php $x=5; $y=6; $z=$x+$y; echo $z; ?>
Tranje primjer
PHP varijable
Kao i kod algebre, PHP varijable mogu se koristiti za dranje vrijednosti (x = 5) ili izraze (z = x + y). Varijabilni moe imati kratka imena (kao to su xiy) ili vie opisnih imena (dob, carname, totalvolume). Pravila za PHP varijabli:
Varijabla poinje s $ znakom, nakon ega slijedi ime varijable Naziv varijable moraju poeti sa slovom ili podvlaka
Naziv varijable moe sadravati samo alfanumerike znakove i podvlake (az, 0-9, i _) Ime varijable ne smije sadravati razmake Varijabilni imena su velika i mala slova ($ y $ i Y su dvije razliite varijable)
Lokalno Djelokrug
Varijabla proglaen unutar PHP funkcije jedinica lokalne i moe biti samo pristupiti u roku tu funkciju:
Primjer
<?php $x=5; // global scope function myTest() { echo $x; // local scope } myTest(); ?>
Tranje primjer Skripta gore nee proizvesti nikakav izlaz, jer odjek izjava odnosi se na lokalnom opseg varijable $ x, koja nije dodijeljena vrijednost unutar tog opsega. Moete imati lokalne varijable s istim imenom u razliitim funkcijama, jer lokalne varijable su samo prepoznati po funkciji u kojem su objavljene. Lokalne varijable briu im je funkcija zavrena.
Naslovnica Djelokrug
Varijabla koja je definirana izvan bilo funkcije, ima globalni opseg. Globalne varijable se moe pristupiti iz bilo kojeg dijela skripte, osim u funkciji. Da biste pristupili globalnu varijablu unutar funkcije, koristiti globalnu kljunu rije:
Primjer
<?php $x=5; // global scope $y=10; // global scope function myTest() { global $x,$y; $y=$x+$y; } myTest(); echo $y; // outputs 15 ?>
Tranje primjer PHP takoer pohranjuje sve globalne varijable u niz zove $ GLOBALS [ indeks ]. Indeks dri ime varijable. Ovo polje je takoer dostupan u roku od funkcija, a moe se koristiti za auriranje globalne varijable izravno.
Primjer
<?php $x=5; $y=10; function myTest() { $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']; } myTest(); echo $y; ?>
Tranje primjer
Statiki Djelokrug
Kada je funkcija zavrena, sve svoje varijable normalno briu. Meutim, ponekad elite lokalna varijabla ne moe izbrisati. Da biste to uinili, koristite statinu kljunu rije kada se prvi put izjavljujem varijabla:
Primjer
<?php function myTest() { static $x=0; echo $x; $x++; } myTest(); myTest(); myTest(); ?>
Tranje primjer Zatim, svaki put se funkcija zove, da varijabla e i dalje imati informacije sadrane to od zadnji put funkcija zvalo. Napomena: varijabla je jo uvijek lokalne do funkciji.
Parametar Djelokrug
Parametar je lokalna varijabla ija je vrijednost proslijeena funkciji koju zovete koda. Parametri su proglaeni u popisu parametara kao dio funkcije izjavom:
Primjer
<?php function myTest($x) { echo $x; } myTest(5); ?>
Tranje primjer Parametri su takoer nazivaju argumenti. Mi emo ga razmotriti u vie detalja u naem PHP funkcije poglavlju.
Primjer
<?php $txt="Hello world!"; echo $txt; ?>
Tranje primjer
Napomena: Kada dodijelite tekstualnu vrijednost u varijablu, ne zaboravite staviti jednu ili dvostruko citati oko vrijednosti.
Sada, omoguava pogled na neke najee koritenih funkcija i operatora za manipulaciju konce.
Primjer
<?php $txt1="Hello world!"; $txt2="What a nice day!"; echo $txt1 . " " . $txt2; ?>
Tranje primjer Izlaz kod gore e biti: Pozdrav svijetu! to lijep dan! Savjet: U kodu iznad koristili smo Concatenation operateru dva puta. To je zato to smo htjeli umetnuti prazan prostor izmeu dvije ice.
Primjer
<?php echo strlen("Hello world!"); ?>
Tranje primjer Izlaz kd iznad e biti: 12
Savjet: strlen () esto se koristi u petlji ili drugim funkcijama, kada je vano znati kada niz zavrava. (Tj. u petlji, moda bismo eljeli zaustaviti petlju nakon posljednjeg znaka u nizu).
Primjer
<?php echo strpos("Hello world!","world"); ?>
Tranje primjer Izlaz kd iznad e biti: 6. Savjet: poloaj niza "svijeta" u primjeru gore je est. Razlog da je 6 (a ne 7), da je prvi znak poloaj u nizu je 0, a ne 1.
PHP operateri
Prethodna Sljedea poglavlja
= Operator pridruivanja se koristi za dodjeljivanje vrijednosti varijabli u PHP. + Aritmetiki operator se koristi za dodavanje vrijednosti zajedno u PHP.
3 10 3 1 2 0
-X .b
HiHa
x == y x === y x! = y x <> y x! == y
True ako je x jednak y True ako je x jednak y, a oni su istog tipa True ako je x nije jednak y True ako je x nije jednak y True ako je x nije jednak y, ili oni nisu od iste vrste Vrijedi ako je x vei od y True ako je x manje od y Vrijedi ako je x vei od ili jednak y Vrijedi ako x je manja od ili jednaka y
5 == 8 false 5 === "5" false 5! = 8 vraa true 5 <> 8 vraa true 5! == "5" true
5> 8 false 5 <8 vraa true 5> = 8 false 5 <= 8 vraa true
Operator xiy
Ime I
Primjer x=6 y=3 (x <10 i y> 1) true x=6 y=3 (x == 6 ili y == 5) true x=6 y=3 (x == 6 xor y == 3) false x=6 y=3 (x <10 && y> 1) true x=6 y=3 (x == 5 | | y == 5) false x=6 y=3 ! (x == y) true
x ili y
Ili
x xor y
Xor
x && y
x||y
Ili
!x
Ne
x == y x === y
Jednakost Identitet
Vrijedi ako x i y imaju iste parove kljueva / vrijednosti Vrijedi ako x i y imaju isti parova klju / vrijednost u istom redoslijedu i od iste vrste True ako je x nije jednak y True ako je x nije jednak y True ako je x nije identian y
x! = y x <> y x! == y
ako izjava - izvrava neki kod samo ako je navedeno stanje je istina ako ... drugo izjava - izvrava neki kod, ako je uvjet istinit, a drugi kod ako je uvjet false ako ... ako .... inae drugdje izjava - odabire jednu od nekoliko blokova koda treba izvriti Naredba switch - odabire jedan od mnogih blokova koda treba izvriti
Primjer
Sintaksa if (condition) { code to be executed if condition is true; } else { code to be executed if condition is false; }
Primjer ispod e izlaz "Imati dobar dan!" ako trenutno vrijeme je manje od 20, a "Laku no!" drugaije:
Primjer
<?php $t=date("H"); if ($t<"20") { echo "Have a good day!"; } else { echo "Have a good night!"; } ?>
Tranje primjer
Sintaksa if (condition) { code to be executed if condition is true; } else if (condition) { code to be executed if condition is true; } else { code to be executed if condition is false; }
Primjer ispod e izlaz "Jeste dobro jutro!" ako trenutno vrijeme je manje od 10, a "Imati dobar dan!" ako je trenutna vrijeme je manje od 20. Inae to e izlaz "Laku no!":
Primjer
<?php $t=date("H"); if ($t<"10") { echo "Have a good morning!"; } else if ($t<"20") { echo "Have a good day!"; } else { echo "Have a good night!"; } ?>
Tranje primjer
Sintaksa switch (n) { case label1: code to be executed if n=label1; break; case label2: code to be executed if n=label2; break; default: code to be executed if n is different from both label1 and label2; }
Ovo je nain kako se to radi: Prvo imamo jednu izraz n (najee varijabla), koja je ocijenjena jednom. Vrijednost izraza se usporeuje s vrijednostima za svaki sluaj u strukturi. Ako je utakmica, blok koda povezana s tom sluaju se izvrava. Koristite razbiti kako bi se sprijeilo kod iz tranje u slijedeem sluaju automatski. Zadaniizjava se koristi ako se ne podudaraju se nalazi.
Primjer
<?php $favcolor="red"; switch ($favcolor) { case "red": echo "Your favorite break; case "blue": echo "Your favorite break; case "green": echo "Your favorite break; default: echo "Your favorite } ?>
Tranje primjer
color is red!"; color is blue!"; color is green!"; color is neither red, blue, or green!";
PHP Razvrstati
Prethodna Sljedea poglavlja
Niz pohranjuje viestruke vrijednosti u jednoj varijabli:
Primjer
<?php $cars=array("Volvo","BMW","Toyota"); echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . "."; ?>
Tranje primjer
to je Array?
Niz je posebna varijabla koja moe drati vie od jedne vrijednosti na vrijeme. Ako imate popis stavki (popis imena automobila, na primjer), uvanje automobila u pojedinih varijabli mogao izgledati ovako:
$cars1="Volvo"; $cars2="BMW"; $cars3="Toyota";
Meutim, to ako elite petlje kroz automobilima i pronai neku odreenu? A to ako nisu imali tri automobila, ali 300? Rjeenje je stvoriti niz! Niz moe drati mnoge vrijednosti pod jednim imenom, a vi moete pristupiti vrijednosti koje se odnose na brojem indeksa.
Valutnom polja - Nizovi s numerikom indeksa Asocijativnog polja - Nizovi s nazivom tipki Viedimenzionalnih nizovi - Arrays sadre jednu ili vie polja
Sljedei primjer stvara indeksirani niz nazivom $ automobili, dodjeljuje tri elementa na njega, a zatim ispisuje tekst sadri niz vrijednosti:
Primjer
<?php $cars=array("Volvo","BMW","Toyota"); echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . "."; ?>
Tranje primjer
?>
Tranje primjer
ili:
$age['Peter']="35"; $age['Ben']="37"; $age['Joe']="43";
Tranje primjer
Multidimenzionalni Polja
Viedimenzionalna polja e biti objanjeno u odjeljku PHP napredne.
Prethodna
sortiranje () - sortiranje polja u uzlaznom redoslijedu rsort () - sortiranje polja u silaznom redoslijedu asort () - sortiranje asocijativne nizove u uzlaznom redoslijedu, prema vrijednosti ksort () - sortiranje asocijativne nizove u uzlaznom redoslijedu, prema kljuu arsort () - sortiranje asocijativne nizove u silaznom redoslijedu, prema vrijednosti krsort () - sortiranje asocijativne nizove u silaznom redoslijedu, prema kljuu
Primjer
Primjer
<?php $numbers=array(4,6,2,22,11); sort($numbers); ?>
Tranje primjer
Primjer
<?php $cars=array("Volvo","BMW","Toyota"); rsort($cars); ?>
Tranje primjer Sljedei primjer vrste elemenata $ brojevi polja u silaznom numeriki redoslijed:
Primjer
<?php $numbers=array(4,6,2,22,11); rsort($numbers); ?>
Tranje primjer
Primjer
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); asort($age); ?>
Tranje primjer
Primjer
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); ksort($age); ?>
Tranje primjer
Primjer
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); arsort($age); ?>
Tranje primjer
Primjer
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); krsort($age); ?>
Tranje primjer
PHP Petlje
esto kad piete kd, elite isti blok koda za pokretanje iznova i iznova u nizu. Umjesto dodavanja nekoliko gotovo jednake linije u pismu moemo koristiti petlje izvriti zadatak kao to je ovaj. U PHP-u, imamo sljedee petlje izjave:
dok - petlje kroz blok koda dok naveden uvjet je istina ne ... a - petlje kroz blok koda jednom, a zatim ponavlja petlju dok god je uvjet je istina za - petlje kroz blok koda odreeni broj puta foreach - petlje kroz bloka koda za svaki element u niz
Dok Petlja
While petlja izvrava blok koda, dok je uvjet true.
is is is is is
1 2 3 4 5
<html> <body> <?php $i=1; do { $i++; echo "The number is " . $i . "<br>"; } while ($i<=5); ?> </body> </html>
Izlaz:
is is is is is
2 3 4 5 6
Za Loop
For petlja se koristi kada unaprijed znate koliko puta je scenarij trebao pokrenuti.
init : Uglavnom se koristi za postavljanje brojaa (ali moe biti bilo koji broj treba izvriti jednom na poetku petlje) Uvjet : Procijenjena za svaku petlju ponavljanja. Ako se procjenjuje na TRUE, petlja se nastavlja. Ako se procjenjuje na FALSE, petlja zavrava. prirast : Uglavnom se koristi za poveanje broja (ali moe biti bilo koji broj treba izvriti na kraju iteracije)
Napomena: U init i prirast parametri iznad moe biti prazan ili imati vie izraza (odvojene zarezima).
Primjer
Primjer ispod definira petlju koja poinje sa i = 1. Petlja e se nastaviti prikazivati sve dok varijabla ja je manji od ili jednak pet. Varijabla i poveat e se za jedan svaki put petlja se izvodi:
<html> <body>
<?php for ($i=1; $i<=5; $i++) { echo "The number is " . $i . "<br>"; } ?> </body> </html>
Izlaz:
is is is is is
1 2 3 4 5
Foreach petlja
Foreach petlja se koristi za petlje kroz polja.
Primjer
Sljedei primjer pokazuje petlju koja e se ispisati vrijednosti danog niza:
<html> <body> <?php $x=array("one","two","three"); foreach ($x as $value) { echo $value . "<br>"; } ?> </body> </html>
Izlaz:
PHP funkcije
Prethodna Sljedea poglavlja
Stvarna mo PHP dolazi iz njegovih funkcija. U PHP-u, postoji vie od 700 izgraen-in funkcija.
PHP funkcije
U ovom poglavlju emo vam pokazati kako stvoriti vlastite funkcije. Da bi scenarij od toga da bude pogubljen kada se stranica uita, moete ga staviti u funkciju. Funkcija e se izvriti pozivom na funkciji. Moete nazvati funkciju s bilo kojeg mjesta unutar stranice.
Daj funkciji ime koje odraava ono to funkcija radi Naziv funkcija moe poeti sa slovom ili podvlaenje (ne broj)
Primjer
Jednostavna funkcija koja pie moje ime kad se zove:
<html> <body> <?php function writeName() { echo "Kai Jim Refsnes"; } echo "My name is "; writeName(); ?> </body> </html>
Izlaz:
Primjer 1
Sljedei primjer e pisati razliite prvi imena, ali jednako prezime:
<html> <body> <?php function writeName($fname) { echo $fname . " Refsnes.<br>"; } echo "My name is "; writeName("Kai Jim"); echo "My sister's name is "; writeName("Hege"); echo "My brother's name is "; writeName("Stale"); ?> </body> </html>
Izlaz:
My name is Kai Jim Refsnes. My sister's name is Hege Refsnes. My brother's name is Stale Refsnes.
Primjer 2
Sljedei funkcija ima dva parametra:
<html> <body> <?php function writeName($fname,$punctuation) { echo $fname . " Refsnes" . $punctuation . "<br>"; } echo "My name is "; writeName("Kai Jim","."); echo "My sister's name is "; writeName("Hege","!"); echo "My brother's name is "; writeName("Stle","?"); ?> </body> </html>
Izlaz:
My name is Kai Jim Refsnes. My sister's name is Hege Refsnes! My brother's name is Stle Refsnes?
</body> </html>
Izlaz:
1 + 16 = 17
Primjer
Primjer u nastavku sadri HTML obrazac s dva polja za unos i submit gumb:
<html> <body> <form action="welcome.php" method="post"> Name: <input type="text" name="fname"> Age: <input type="text" name="age"> <input type="submit"> </form> </body> </html>
Kada korisnik ispuni obrazac iznad i klikne na submit gumb, oblik podaci se alju u PHP datoteke, pod nazivom "welcome.php": "Welcome.php" izgleda ovako:
<html> <body> Welcome <?php echo $_POST["fname"]; ?>!<br> You are <?php echo $_POST["age"]; ?> years old. </body> </html>
Obrazac Validacija
Upute za ulaz bi trebao biti potvreno na pregledniku god je to mogue (po klijenta skripti). Preglednik valjanosti je bre i smanjuje optereenje posluitelja. Trebali bi razmotriti servera valjanosti ako korisnik ulaz e biti stavljen u bazu podataka. Dobar nain za provjeru obrasca na posluitelju je objaviti obrazac na sebi, umjesto skakanje na drugu stranicu. Korisnik tada e dobiti poruku o pogreci na istoj stranici kao obliku. To ga ini lakim da otkrijete pogreku.
Primjer <form action="welcome.php" method="get"> Name: <input type="text" name="fname"> Age: <input type="text" name="age"> <input type="submit"> </form>
Kada korisnik klikne na gumb "Poalji", URL poslan na server mogao izgledati otprilike ovako:
http://www.w3schools.com/welcome.php?fname=Peter&age=37
"Welcome.php" datoteka sada moe koristiti $ _GET varijablu za prikupljanje podataka iz obrazaca (nazivi polja obrasca automatski e biti kljuevi u $ _GET niz):
Welcome <?php echo $_GET["fname"]; ?>.<br> You are <?php echo $_GET["age"]; ?> years old!
$ _POST Varijabilni
Unaprijed $ _POST varijable se koristi za prikupljanje vrijednosti iz forme poslan s metodom = "post". Informacije poslane od oblika s POST metodom je nevidljiv drugima i nema ogranienja na koliinu podataka za slanje. Napomena: Meutim, tu je 8 MB max veliina za POST metodu, po defaultu (moe biti promijenjen postavljanjem post_max_size u php.ini datoteci).
Primjer <form action="welcome.php" method="post"> Name: <input type="text" name="fname"> Age: <input type="text" name="age"> <input type="submit"> </form>
Kada korisnik klikne na gumb "Poalji", URL e izgledati ovako:
http://www.w3schools.com/welcome.php
"Welcome.php" datoteka sada moe koristiti $ _POST varijable za prikupljanje podataka iz obrazaca (nazivi polja obrasca automatski e biti kljuevi u $ _POST polja):
Welcome <?php echo $_POST["fname"]; ?>!<br> You are <?php echo $_POST["age"]; ?> years old.
Primjer Welcome <?php echo $_REQUEST["fname"]; ?>!<br> You are <?php echo $_REQUEST["age"]; ?> years old.