Escolar Documentos
Profissional Documentos
Cultura Documentos
Avantaje MySql / PHP Este rapid Este ieftin (open source) Este uor de folosit Poate rula pe mai multe sisteme de operare Suportul tehnic este valabil peste tot Este sigur Lucreaz cu baze de date mari Adugarea unei seciuni PHP unei pagini HTML Codul PHP este cuprins ntre tag-urile <?php ?> sau se poate folosi forma prescurtat
<? ?>.
S ncepem cu un exemplu. Evident primul o s fie cu Hello World!. Este o tradiie cnd nvei pentru prima dat un limbaj de programare ca primul program s fie Hello World.
Programul HTML <html> <head><title>Hello World Program</title></head>
smaranda.belciug@inf.ucv.ro
<body> <p>Hello World! </body> </html> Programul PHP <html> <head><title>Hello World Program</title></head> <body> <?php echo <p>Hello World! ?> </body> </html>
echo afieaz textul dintre ghilimele Instruciunile n PHP se termina cu ;. Variabile n PHP Numele variabilei Toate variabilele ncep cu semnul $. Acesta i transmite PHP-ului c este vorba de numele unei variabile Nu exist limit de lungime privind numele unei variabile Numele de variabil poate s conin litere, numere i underscore. Numele variabilei trebuie s nceap un o liter sau cu underscore Este case-sensitive
$age = 12; $price = 2.55; $number=-2; $name = Goliath Smith; echo $age; <p>Hello World! <?php $age = 15; $name = Harry; ?> <br>Hello World again!<br> <?php echo $name; ?>
ncruciarea unor multiple blocuri de cod Putei s ieii din php de cte ori dorii ntr-o pagin. De exemplu codul urmtor:
<html> <head> <title><?php echo "Buna!";?></title>
smaranda.belciug@inf.ucv.ro
</head> <body> <?php $date = "3 Decembrie"; ?> <h3>Data de azi este <?=$date;?></h3> </body> </html>
Variabilele dintr-un bloc anterior sunt retinute n alte blocuri, cum este cazul $date. Output Majoritatea paginilor Web au un nivel ridicat de interactivitate. Script-uri foarte bine scrise comunic cu utilizatorii via interfa. Php-ul ofer mai multe unelte pentru a afia informaia. print()
boolean print (argument)
Comanda echo() este similar cu print(), dar exist totui dou diferene: nu poate fi folosit ca parte dintr-o expresie complex deoarece ntoarce void, spre deosebire de printf care ntoarce boolean. 3
Integer
42 # decimal -678900 # decimal 0755 # octal 0xC4E # hexadecimal <?php $val = 45678945939390393678976; echo $val + 5; ?>
Float
4.5678 4.0 8.7e4 1.23E+11
String
"whoop-de-do" 'subway\n' "123$%^789"
smaranda.belciug@inf.ucv.ro
$state["Alaska"] = "Juneau"; $state["Arizona"] = "Phoenix"; ... $state["Wyoming"] = "Cheyenne";
Obiecte
class appliance { private $power; function setPower($status) { $this->power = $status; } } ... $blender = new appliance;
smaranda.belciug@inf.ucv.ro Ce este un array? Un array este n mod tradiional o mulime de itemi care au caracteristici comune (modele de maini, fructe etc.) i acelai tip de date (string, integer etc.). PHP-ul duce lucrurile cu un pas nainte deoarece permite ca ntr-un array itemii s nu aiba toi acelai tip de date. Fiecare entitate conine dou componente: o cheie i o valoare. Cheia servete la cutarea mai rapid a valorii.
$states = array (0 => "Alabama", "1" => "Alaska"..."49" => "Wyoming"); Si.. $states[0]
Sau
$states = array ("OH" => "Ohio", "PA" => "Pennsylvania", "NY" => "New York") Si $states["OH"]
smaranda.belciug@inf.ucv.ro
array()
range()
$die = range(0,6); // $die = array(0,1,2,3,4,5,6) $letters = range("A","F"); // $letters = array("A,","B","C","D","E","F");
array_pop()
$states = array("Ohio","New York","California","Texas"); $state = array_pop($states); // $state = "Texas"
array_shift()
$states = array("Ohio","New York","California","Texas"); $state = array_shift($states); // $states = array("New York","California","Texas") // $state = "Ohio"
array_unshift()
$states = array("Ohio","New York"); array_unshift($states,"California","Texas"); // $states = array("California","Texas","Ohio","New York");
smaranda.belciug@inf.ucv.ro
sort()
SORT_NUMERIC: sortare numerica SORT_REGULAR: sortare dupa valoarea ASCII SORT_STRING: - sortare string $grades = array(42,57,98,100,100,43,78,12); sort($grades); print_r($grades); $states = array("OH" => "Ohio", "CA" => "California", "MD" => "Maryland"); sort($states); print_r($states);
smaranda.belciug@inf.ucv.ro
$states = array("Alabama", "Alaska", "Arizona", "Arkansas", "California", "Colorado", "Connecticut"); $subset = array_slice($states, 4); print_r($subset);
array_intersect()
$array1 = array("OH","CA","NY","HI","CT"); $array2 = array("OH","CA","HI","NY","IA"); $array3 = array("TX","MD","NE","OH","HI"); $intersection = array_intersect($array1, $array2, $array3); print_r($intersection);
array_diff()
$array1 = array("OH","CA","NY","HI","CT"); $array2 = array("OH","CA","HI","NY","IA"); $array3 = array("TX","MD","NE","OH","HI"); $diff = array_diff($array1, $array2, $array3); print_r($intersection);
shuffle()
$cards = array("jh","js","jd","jc","qh","qs","qd","qc", "kh","ks","kd","kc","ah","as","ad","ac"); // shuffle the cards shuffle($cards); print_r($positions);
array_sum()
<?php $grades = array(42,"hello",42); $total = array_sum($grades); print $total; ?>
Lucrul cu fiiere i sisteme de operare Fiiere i directoare Permisiuni ale fiierelor Fiiere I/O Coninutul directoarelor Comenzi shell
Fiiere i directoare
10
smaranda.belciug@inf.ucv.ro
pathinfo()
<?php $pathinfo = pathinfo("/home/www/htdocs/book/chapter10/index.html"); echo "Dir name: $pathinfo[dirname]<br />\n"; echo "Base name: $pathinfo[basename] <br />\n"; echo "Extension: $pathinfo[extension] <br />\n"; ?>
fileatime() returneaza data i ora cnd a fost accesat ultima dat fiierul respectiv
<?php $file = "/usr/local/apache2/htdocs/book/chapter10/stat.php"; echo "File last accessed: ".date("m-d-y g:i:sa", fileatime($file)); ?>
filectime() returneaz data i ora cnd a fost modificat ultima dat fiierul
<?php $file = "/usr/local/apache2/htdocs/book/chapter10/stat.php"; echo "File inode last changed: ".date("m-d-y g:i:sa", fileatime($file)); ?>
Permisiuni i apartenen
chown() ncearc s schimbe proprietarul fiierului cu un user
int chown (string filename, mixed user)
11
smaranda.belciug@inf.ucv.ro
int fileperms (string filename)
isexecutable() returneaz TRUE dac fiierul exist i este executabil. FALSE altfel isreadable() - returneaza TRUE daca fiierul poate fi citit iswriteable() - returneaz TRUE dac fiierul poate fi scris feof() determin dac s-a ajuns la sfritul fiierului sau nu
<?php $fh = fopen("/home/www/data/users.txt", "rt"); while (!feof($fh)) echo fgets($fh); fclose($fh); ?>
<?php $users = file("users.txt"); foreach ($users as $user) { list($name, $email) = explode(" ", $user); // sterge newline din $email $email = trim($email); echo "<a href=\"mailto:$email\">$name</a> <br />\n"; } ?>
12
smaranda.belciug@inf.ucv.ro
} ?>
opendir() - deschide un director closedir() nchide un director readdir() afieaz coninutul unui director
<?php $dh = opendir('/usr/local/apache2/htdocs/'); while ($file = readdir($dh)) echo "$file <br>"; closedir($dh); ?>
Forms 1. Urmtorul script cere ca utilizatorul s-i introduca numele i adresa de email.
<?php // daca butonul de submit a fost apasat if (isset($_POST['submit'])) { echo "Hi ".$_POST['name']."!<br />"; echo "The address ".$_POST['email']." will soon be a spam-magnet!<br />"; } ?> <form action="subscribe.php" method="post"> <p> Name:<br /> <input type="text" name="name" size="20" maxlength="40" value="" /> </p> <p> Email Address:<br /> <input type="text" name="email" size="20" maxlength="40" value="" />
13
smaranda.belciug@inf.ucv.ro
</p> <input type="submit" name = "submit" value="Go!" /> </form>
5.
<?php if (isset($_POST['submit'])) {
14
smaranda.belciug@inf.ucv.ro
echo "You like the following languages:<br />"; foreach($_POST['languages'] AS $language) echo "$language<br />"; } ?> <form action="multiplevalueexample.php" method="post"> What's your favorite programming language?<br /> (check all that apply):<br /> <input type="checkbox" name="languages[]" value="csharp" />C#<br /> <input type="checkbox" name="languages[]" value="jscript" />JavaScript<br /> <input type="checkbox" name="languages[]" value="perl" />Perl<br /> <input type="checkbox" name="languages[]" value="php" />PHP<br /> <input type="submit" name="submit" value="Go!" /> </form>
15