Aparatura Slabire ProfesionalaSaloane Bruno Vassari Eximia - slabire

Căutare fără sensibilitate la diferenţa între majuscule şi minuscule

March 10, 2008 – 11:40 am

Să presupunem că doresc să execut o căutare fără sensibilitate la diferenţa între majuscule şi minuscule. Cum pot proceda?

O modalitate ar fi utilizarea funcţiei natcasesort(), care sortează un tablou folosind o „ordine naturală”, care nu este sensibilă

Sortarea tablourilor

March 10, 2008 – 11:33 am

Sortarea reprezintă o altă operaţie frecvent aplicată tablourilor. PHP furnizează o  suită de funcţii care facilitează sortarea unui tablou. De exemplu, un tablou poate fi creat după cum urmează: Citeste in continuare �

Funcţia list()

March 10, 2008 – 11:27 am

O altă funcţie utilă în lucrul cu tablouri este funcţia list(), care vă permite să atribuiţi valori la numeroase variabile în cadrul unei instrucţiuni. Funcţia list() este deseori folosită cu funcţia each(), deoarece funcţia list() facilitează accesul separat la cheia şi la valoarea Citeste in continuare �

Funcţia each()

March 10, 2008 – 11:26 am

 O altă funcţie utilă în parcurgerea tablourilor este each (). Funcţia each () returnează următoarea pereche cheie-valoare din tabloul specificat. Perechea cheie-valoare este returnată sub forma unui tablou asociativ cu patru elemente, după cum urmează:

<tabel>

*Cheie

*Valoare

*0

*Componenta cheie a perechii cheie-valoare curentă

*1

* Componenta valoare a perechii cheie-valoare curentă

*”key”

* Componenta cheie a perechii cheie-valoare curentă

*”value”

* Componenta valoare a perechii cheie-valoare curentă

</tabel>

Observaţi că puteţi folosi valoarea cheie „0″ sau „cheie” pentru a obţine accesul la componenta cheie a perechii cheie-valoare; similar, puteţi folosi valoarea cheie „1″ sau „valoare” pentru a obţine accesul la componenta valoare a perechii cheie-valoare. Iată un scurt exemplu care ilustrează modul de operare a funcţiei each ():

$limbaje = array(10=>”Perl”, 20=>”PHP”, 21=>”Python”);

$fiecare = each($limbaje);

$zero = $each[1];

$cheie = each[‚key’];

$valoare = $each[‚value’];

echo „<BR>zero=$zero”;

echo „<BR>unu=$unu”;

echo „<BR>cheie=$cheie”;

echo „<BR>valoare=$valoare”;

Datele de ieşire ale acestui exemplu sunt următoarele:

zero=10

unu=Perl

cheie=10

valoare=Perl

Funcţia key ()

March 10, 2008 – 11:16 am

Funcţia key() este corelată cu funcţia current(). Dacă funcţia current() retur­nează valoarea asociată elementului curent, funcţia key () returnează cheia asociată elementului curent. Iată un exemplu care ilustrează modul de operare al acestei funcţii: 

$limbaje = array(10=>”Perl”, 20=>”PHP”, 21=>”Python”);

$curent = current($limbaje);

$cheie = key($limbaje);

echo „<BR>functia current() a returnat $curent”;

echo „<BR>functia key() a returnat $cheie”; 

Datele de ieşire ale exemplului sunt următoarele: 

functia current() a returnat Perl

functia key() a returnat 10

Lucrul cu funcţii listă

March 10, 2008 – 11:11 am

În afară de modalităţile de parcurgere iterativă a tablourilor, PHP oferă numeroase funcţii care vă permit traversarea tablourilor, deplasându-vă înainte sau înapoi, după dorinţă. Prima dintre aceste funcţii este current(), care returnează valoarea curent al tabloului. Funcţia current() foloseşte un pointer intern de tablou pe care Citeste in continuare �

Parcurgerea iterativă a unui tablou non-secvenţial

March 10, 2008 – 11:09 am

În unele limbaje de programare, parcurgerea unui tablou non-secvenţial este o operaţie complicată. Cu toate acestea, PHP 4 include o instrucţiune foreach care simplifică iteraţiile de acest gen. Instrucţiunea foreach are următoarea formă generală:

foreach (tablou as $cheie =>$valoare) {corp}

Instrucţiunea parcurge în mod iterativ tabloul denumit {tablou, stabilind valori adecvate pentru valorile variabilelor $cheie şi $valoare aferente fiecărui element al tabloului. Iată un exemplu simplu:

$limbaje = array(10=>”Perl”, 20=>”PHP”, 21=>”Python”);

// parcurge iterativ tabloul

foreach ($limbaje as $index => $limbaj)

{

echo „<BR>$index =>$limbaj”;

}

 

Remarcaţi că instrucţiunea echo face pur şi simplu referire la valorile variabilelor $index şi $limbaj, cărora li se atribuie în mod automat valorile cheii, respectiv elementului curent. Iată datele de ieşire ale exemplului:

 

10 =>Perl

20 =>HP

21 =>Pynton

Instrucţiunea continue

March 10, 2008 – 11:07 am

O instrucţiune corelată cu instructiunea break este continue. Instrucţiunea continue sistează iteraţia curentă a buclei, determinând evaluarea imediată a expre­siilor de incrementare şi de test. Ca un exemplu, să presupunem că doriţi să căutaţi în tabloul Citeste in continuare �

Instrucţiunea break

March 10, 2008 – 11:03 am

Observaţi că iteraţia continuă chiar şi după stabilirea unei identităţi. Când se caută într-un tablou, execuţia căutării poate fi sistată după găsirea elementului dorit; continuarea iteraţiei în tablou nu face decât să irosească resursele calculatorului, fară a afecta rezultatele operaţiei. Pentru a opri execuţia unei iteraţii, puteţi folosi instructiunea Citeste in continuare �

Căutarea într-un tablou secvenţial

March 10, 2008 – 11:01 am

Pentru a examina modul de utilizare a iteraţiilor, să ne concentrăm asupra problemei de a determina dacă un tablou conţine o anumită valoare. Iată un exemplu:

 

$limbaje = array(0=>”Perl”, 1 =>”PHP”, 2 =>”Python”);

$cauta =”PHP”; Citeste in continuare �