PHP String függvények (Szöveg karaktereinek, szavainak megszámlálása, szöveg keresése, cseréje, nagy-, kisbetűssé alakítása, visszafele kiíratása)

Ebben a leckében több hasznos PHP String függvényt fogunk bemutatni, ami nagyban megkönnyíti a szövegekkel való munkát PHP-ban.

PHP alapok (PHP webprogramozás alapjai kezdőknek) című cikk borítóképe

PHP String függvények (Szöveg karaktereinek, szavainak megszámlálása, szöveg keresése, cseréje, nagy-, kisbetűssé alakítása, visszafele kiíratása)

Ebben a leckében több hasznos PHP String függvényt fogunk bemutatni, ami nagyban megkönnyíti a szövegekkel való munkát PHP-ban. Mutatunk olyan függvényt, amely megszámolja a szöveg karaktereinek, szavainak számát, amely visszafele jeleníti meg a szöveget, amely egy konkrét szöveget keres a Stringben, amely egy szót lecserél a Stringben és olyat, amely kis- vagy nagybetűssé teszi az egész szöveget.

String karaktereinek száma PHP-ban

Először nézzük meg talán az egyik leghasznosabb String függvényt, mely megszámolja egy szöveg karaktereinek számát.


Szintaxis:

strlen("SZÖVEG"/VÁLTOZÓ);
Code language: PHP (php)

A szöveg karaktereinek hosszát az “strlen” függvény adja vissza, mely egy paramétert vár, magát a szöveget, vagy a változót, amelybe a szöveget tároljuk.


Példa szöveg karaktereinek megszámlálására:

PHP kód

<?php
  echo strlen("Ezt számold meg!") . "<br>";
  echo strlen("Ezt szamold meg!");
?>
Code language: HTML, XML (xml)

Eredmény

17
16


Ha sajátkezűleg leszámoljuk, hogy a fent megadott szöveg hány karakterből áll, akkor eltérést láthatunk a megjelenített eredményhez képest.

Az strlen() valójában a byte-ok számát adja vissza, nem a karakterek számát.

Ebből a tulajdonságából következik, hogy egy angol nyelvű szövegnél megfelelően fogja visszaadni a karakterek számát, de a magyar ékezetes betűk bezavarják.

String szószámláló PHP-ban

A karakterek után próbáljuk meg megszámolni a szavakat.


Szintaktika:

str_word_count("SZÖVEG"/VÁLTOZÓ);
Code language: PHP (php)

A szintaxisa ugyanúgy néz ki, mint a karakterszámláló, csak a függvényneve változik.


Példa szavak megszámlálására PHP-ban:

PHP kód

<?php
  echo str_word_count("Ezt számold meg!") . "<br>";
  echo str_word_count("Ezt szamold meg!");
?>
Code language: HTML, XML (xml)

Eredmény

4
3


Ahogy láthatjátok a szavak megszámlálását is megzavarják a magyar karakterek.

Szöveg keresése String-ben

Most pedig nézzünk meg egy igen hasznos funkciót, mely segítségével könnyedén ellenőrizni tudjuk, hogy egy adott szó, vagy karakterek szerepelnek-e a megadott String-ben. Ez a függvény azt adja vissza, hogy a keresett szó első karaktere milyen pozícióban (hanyadik helyen) található.


Szintaxis:

strpos(MIBEN, MIT);
Code language: PHP (php)

Ez a függvény két paramétert vár, első helyre azt, hogy miben keressen, ide megadhatjuk magát a szöveget vagy egy változót is, a második helyre pedig azt, hogy mit keressen, természetesen ide is jöhet változó vagy konkrét szöveg.


Példa szöveg keresésére függvénnyel PHP-ban:

PHP kód

<?php
  echo strpos("Ezt számold meg!", "számold") . "<br>";
  echo strpos("Ezt szamold meg!", "szamold");
?>
Code language: HTML, XML (xml)

Eredmény

4
4


Fenti példában megvizsgáltuk, hogy az “strpos” függvényt vajon bezavarja-e az ékezet vagy sem. Kis egyszerű tesztünk eredménye, hogy nem. Mind a két esetben megtalálta a keresett szót, függetlenül attól, hogy volt-e benne ékezet vagy sem.

A függvény azért a 4 értékeket adta vissza, mert a negyedik sorszámmal rendelkező karakternél kezdődik el a keresett szó kiíratása. (Nulladik helyen van az “E”, elsőn a “z”, másodikon a “t”, harmadikon a szóköz, míg a negyediken a keresett szó első karaktere.)

Szavak cseréje PHP-ban

Most pedig következzen egy újabb hasznos függvény, mely segítségével konkrét szavakat tudunk lecserélni egy általunk kiválasztottra egy stringben.


Szintaktika:

str_replace(MIT, MIRE, HOL);

Ez a PHP függvény három paramétert vár, első helyére azt, hogy mit szeretnénk lecserélni, a második helyére azt, hogy mire szeretnénk lecserélni, a harmadik helyére meg azt, hogy miben, hol. Mind a három paramétert megadhatjuk szöveggel vagy változóval.


Példa szöveg hátrafele kiíratására:

PHP kód

<?php
  echo str_replace("cseréld", "hozd", "Ezt cseréld le!") . "<br>";
  echo str_replace("csereld", "hozd", "Ezt csereld le!");
?>
Code language: HTML, XML (xml)

Eredmény

Ezt hozd le!
Ezt hozd le!


Ez is tökéletesen működik magyar nyelvű szövegekkel.

String kiíratása visszafele

Ez inkább egy olyan függvény, amely használatára keveset van szükségünk, de azért hasznos ismerni.


Szintaktika:

strrev("SZÖVEG"/VÁLTOZÓ);
Code language: PHP (php)


Példa szöveg hátrafele kiíratására:

PHP kód

<?php
  echo strrev("Ezt írd visszafele!") . "<br>";
  echo strrev("Ezt ird visszafele!");
?>
Code language: HTML, XML (xml)

Eredmény

!elefazssiv dr�� tzE
!elefazssiv dri tzE


Láthatjátok, hogy az ékezetes karakterek megint bezavarják a PHP függvényt, míg ha ékezet nélkül dolgozunk, akkor semmilyen probléma nem lép fel.

Szöveg nagybetűssé alakítása PHP-ban

Arra is lehetőségünk van, hogy egy szöveg összes karakterét nagybetűssé alakítsuk.


Szintaktika:

strtoupper("SZÖVEG"/VÁLTOZÓ);
Code language: JavaScript (javascript)

Az “strtoupper” után megadjuk a szöveget vagy a változót, amit szeretnénk nagybetűssé alakítani.



Példa szöveg nagybetűssé alakítására:

PHP kód

<?php
  echo strtoupper("Ezt alakítsd naggyá!") . "<br>";
  echo strtoupper("Ezt alakitsd naggya!");
?>
Code language: HTML, XML (xml)

Eredmény

EZT ALAKíTSD NAGGYá!
EZT ALAKITSD NAGGYA!


Ez a PHP függvényt is bezavarják a magyar ékezetes karakterek, így azokat nem alakítják naggyá.

Szöveg kisbetűssé alakítása PHP-ban

Nemcsak nagybetűssé, hanem kisbetűssé is alakíthatjuk a szövegeket PHP-ban.


Szintaktika:

strtolower("SZÖVEG"/VÁLTOZÓ);
Code language: JavaScript (javascript)

Az “strtolower” után megadjuk a szöveget vagy a változót, amit szeretnénk kisbetűssé alakítani.



Példa szöveg kisbetűssé alakítására:

PHP kód

<?php
  echo strtolower("EZT ALAKÍTSD KICSIVÉ!") . "<br>";
  echo strtolower("EZT ALAKITSD KICSIVE!");
?>
Code language: HTML, XML (xml)

Eredmény

ezt alakÍtsd kicsivÉ!
ezt alakitsd kicsive!


És az ékezetes betűk kicsivé alakítás során is bekavarnak.

Konklúzió

Nagyon sok hasznos PHP függvény van, amelyeket nem kell leprogramoznunk, hanem alapból elérhetőek, ha a String-ekkel kell műveleteket végeznünk, ám sajnos egy részük nem kompatibilis a magyar karakterekkel. Ettől függetlenül angol nyelvű szövegek esetén erősen ajánlott használni, illetve olyan esetekben is, amikor magyarul írunk, de nem használunk ékezetet. Továbbá fent láthattátok, hogy vannak olyan függvények, amelyeket nem befolyásolnak az ékezetes karakterek, így azokat is nyugodt szívvel lehet használni.

Ha hasznos volt számodra, akkor kérlek oszd meg másokkal is, hogy ezzel támogass minket!