Invata PHPcu punctsivirgula.ro

C O N T I N U T
Tutorial PHP in limba romana.

Explicatii, exemple si aplicatii in PHP pentru incepatori. Tutorial cu scripturi PHP


Operatii cu vectori    0 ! 

Operatiile clasice de cautare, sortare, inserare, etc se pot realiza foarte usor cu ajutorul functiilor specializate, fara sa fie necesara parcurgerea manuala a vectorilor. Iata cateva exemple.

$vector = array( 1, 2, 3, 4, 5, 6 );
$vectAs = array(
	'unu' => 'one',
	'doi' => 'two',
	'trei' => 3
);
 
 
// lungimea unui vector (numarul de elemente) 
print count( $vector ); // 6
 
// se gaseste o valoare in vector?
print in_array( 3, $vector ); // true
 
// exista o anumita cheie in vector?
print array_key_exists( 'trei', $vectAs ); // true
 
// returneaza toate cheile din vector:
print_r( array_keys( $vectAs ) ); // Array ( [0] => unu [1] => doi [2] => trei )
 
// returneaza toate valorile din vector:
print_r( array_values( $vectAs ) ); // Array ( [0] => one [1] => two [2] => 3 )
 
// returneaza o parte din vector
print_r( array_slice(  $vector, 3 ) ); // 4, 5, 6
print_r( array_slice(  $vector, 3, 2 ) ); // 4, 5
print_r( array_slice(  $vector, -5, 3 ) ); // 2, 3, 4
 
// foloseste cheile unui vector ca variabile:
extract( $vectAs );
print $unu; // one
print $doi; // two
print $trei; // 3
 
// sorteaza un vector
sort( $vector ); // 1, 2, 3, 4, 5, 6
rsort( $vector ); // 6, 5, 4, 3, 2, 1
asort( $vectAs ); // sorteaza valorile si mentine asocierea cheilor
 
// adauga o valoare la sfarsitul unui vector
$vector[] = 7;
array_push( $vector, 8 );
# nota: cele 2 instructiuni de mai sus sunt echivalente
 
// modifica un anumit element din vector
$vectAs[ 'trei' ] = 'three';

Nimic de afisat.


Adauga un comentariu la aceasta sectiune.

 


Aplicatie: Sa se afiseze tipul browserului folosit de utilizator    2 ! 

Vom folosi variabila predefinita $_SERVER care contine elementul HTTP_USER_AGENT. Acesta contine textul de identificare transmis de browser catre server. Vom cauta in acest text denumirile browserelor cunostcute si vom afisa un mesaj corespunzator.

Pentru inceput definim o lista de browsere cunoscute.

<?php
$browser = array( 'Firefox', 'MSIE', 'Chrome', 'Safari', 'Opera' );
?>
In continuare vom lua fiecare browser si vom verifica daca se afla in textul de identificare al browserului.
<?php
$gasit = false;  // initial nu am gasit nimic
foreach( $browser as $i => $b ) {
	// $b va avea pe rand fiecare valoare din vectorul $browser
	// $i preprezinta pozitia lui $b in vector
	if( stristr( $_SERVER[ 'HTTP_USER_AGENT' ], $b ) ) {
		$gasit = true;
		print "Folositi {$browser[ $i ]}!<br />";
	}
	if( $gasit ) break; // opreste cautarea daca browserul a fost identificat
}
?>
Rezultatul este afisat mai jos (nota: incercati sa accesati aceasta pagina cu browsere diferite pentru a vedea ca mesajul de schimba):
 
Mihai a spus stristr - 10.07.2010

ce face functia stristr()?

Piny a spus @Mihai - 09.08.2010

Cand nu sti ce anume face o functie, doar apasa click pe ea in exemplele date si vei gasii acolo toata documentatia de care ai nevoie legata de acea functie.


Adauga un comentariu la aceasta sectiune.

 


Depanare    0 ! 

// afisarea unui 'dump' al vectorului - o lista cu toate elementele. 
//De obicei se foloseste la depanare:
 
print_r( $vectAs );
/* afiseaza
Array
(
    [unu] => one
    [doi] => two
    [trei] => 3
)
*/
 
 
// se afiseaza la fel ca mai sus o lista cu elementele vectorului, doar 
// ca se specifica si tipul fiecaruia.
 
var_dump( $vectAs );
/* afiseaza
array(3) {
  ["unu"]=>
  string(3) "one"
  ["doi"]=>
  string(3) "two"
  ["trei"]=>
  int(3)
}
*/

Nimic de afisat.


Adauga un comentariu la aceasta sectiune.