Gyakori függvények

Tömböknél, gyakran használt függvények.


print_r()
count()
array_count_values()
array_flip()

 


 


Tömb teljes tartalmának kiíratása, a tömbelemek indexei sorszámozottak

Kiíratjuk a tömb teljes tartalmát, a print_r() függvénnyel.
Így, könnyen meggyőződhetünk, hogy az adott sorszámmal rendelkező elemben, milyen adat (tartalom) található.
Igen hasznos visszakeresésnél, ha több ezer elemmel és azok tartalmával rendelkezik tömbünk. Könnyen megállapítható, melyik sorszámú tömbelem, mit tartalmaz.

<pre>
<?php
$elsotomb = array ("egér" , "macska" , "kutya" , "farkas");
print_r($elsotomb);
?>
</pre>


Kiíratásnál, a következő eredményt kapjuk:

Array
(
    [0] => egér
    [1] => macska
    [2] => kutya
    [3] => farkas
)

 


Tömb teljes tartalmának kiíratása, a tömbelemek indexei egyedi névvel rendelkeznek

Kiíratjuk a tömb teljes tartalmát, a print_r() függvénnyel.

<pre>
<?php
$elsotomb = array ("egér" => "szürke" , "macska" => "tarka" , "kutya" => "vadász" , "farkas" => "fehér");
print_r($elsotomb);
?>
</pre>


Kiíratásnál, a következő eredményt kapjuk:

Array
(
    [egér] => szürke
    [macska] => tarka
    [kutya] => vadász
    [farkas] => fehér
)

 


Hány elem van a tömbben?

Hosszabb, azaz nagyobb terjedelmű tömböknél, néha jó tudni, hogy hány elem van a tömbben.
A count() függvénnyel megszámláltathatjuk, hány elem van a tömbben, vagy bármely más változóban tárolt elemeket.

Kiíratjuk hány elem van a tömbben, a count() függvénnyel.
<p>
<?php
$elsotomb = array ("egér" , "macska" , "kutya" , "farkas");
$elemek_szama = count($elsotomb);
echo $elemek_szama;
?>
</p>


Kiíratásnál, a következő eredményt kapjuk:

4

 


A tömb elemeiben tárolt adatok között, vannak egyformák?

Hosszabb tömböknél, előfordulhat, hogy egy adott elem tartalma többször is szerepel, azaz másik elemben is megtalálható ugyan azon érték (tartalom).
Ez lehet véletlen szerű beírás, vagy éppen így is akarta a program írója

Kiíratjuk, hány elem tartalma egyezik meg a tömbben, a array_count_values() függvénnyel.
Példánkban, több elemben is, egyforma adatot tárolunk.


<pre>

<?php
$elsotomb = array ("egér" , "macska" , "kutya" , "farkas" , "egér" , "macska" , "kutya" , "farkas" , "egér" , "macska" , "egér" , "macska" , "farkas" );
$elemek_tartalma = array_count_values($elsotomb);
print_r ($elemek_tartalma);
?>

</pre>


Kiíratásnál, a következő eredményt kapjuk:

Array
(
    [egér] => 4
    [macska] => 4
    [kutya] => 2
    [farkas] => 3
)

 


A tömb értékeinek felcserélése.

Hasznos alkalmazás, munkahelyi dolgozók nyilvántartásánál, ügyfélnyilvántartásnál, stb.

Elemek indexértékének, neveket írunk be.
Elemek tartalma, az azonosítószám.

Mi van akkor, ha tömbünkben igen sok nyilvántartás szerepel a fentiek alapján.
De lekérdezésnél, az azonosítószámok alapján szeretnénk eljárni.
Ehhez fel kell cserélni, az indexértéket és tartalmat, azaz az azonosítószámok legyenek az elemek indexértékei.

Hogy ne keljen újragépelni, azaz beírogatni a tömbben nyilvántartott adatokat, megteszi helyettünk, az array_flip() függvény.

 


A nyilvántartási indexértékeket, nevek alkotják

<pre>
<?php
$nev_tajszam = array ("Egér" => "923-33-4444" , "Macska" => "321-65-8765" , "Kutya" => "567-12-4976" , "Farkas" => "125-98-3726");
print_r($nev_tajszam);
?>
</pre>


Kiíratásnál, a következő eredményt kapjuk:

Array
(
    [Egér] => 923-33-4444
    [Macska] => 321-65-8765
    [Kutya] => 567-12-4976
    [Farkas] => 125-98-3726
)

 


Felcseréljük az indexértéket a tartalommal, ezt követően a tartalom képviseli az elemek indexét.

<pre>
<?php
$nev_tajszam = array ("Egér" => "923-33-4444" , "Macska" => "321-65-8765" , "Kutya" => "567-12-4976" , "Farkas" => "125-98-3726");
$tajszam_nev = array_flip($nev_tajszam);
print_r($tajszam_nev);
?>
</pre>


Kiíratásnál, a nyilvántartási számok kerültek előre. A nyilvántartási indexértékeket, mostantól számok alkotják

Array
(
    [923-33-4444] => Egér
    [321-65-8765] => Macska
    [567-12-4976] => Kutya
    [125-98-3726] => Farkas
)

 


Hibásan megírt tömb.
Ugyan azon kulcs, azaz indexnév, kétszer is szerepel (Macska)!
Programunk, felülírta az elsőt a második tartalmával, ezért csak az utolsó előfordulást írja ki.

Elemek kulcsát, azaz indexét, karakterláncok alkotják.

<pre>
<?php
$nev_Alapjan = array ("Egér" => "923-33-4444" , "Macska" => "321-65-8765" , "Eger" => "567-12-4976" , "Macska" => "125-98-3726");
print_r($nev_Alapjan);
?>
</pre>


Kiíratásnál, a következő eredményt kapjuk:

Array
(
    [Egér] => 923-33-4444
    [Macska] => 125-98-3726
    [Eger] => 567-12-4976
)