A PHP capitalization funkciója

Eddig bemutattuk a strpos funkciót, mely a stringek pozíciójának meghatározására való. Műveleteket is végeztünk a stringeken, melyek a szövegszerkesztőkben alkalmazott műveletekre emlékeztethették a kezdő programozókat. Cserét végeztünk a stringeken a str_replace funkció segítségével, mellyel rákerestünk egy-egy stringre, majd lecseréltük. Matematikai szempontból is megközelítettük a témát, és a substr_replace funkcióval egy meghatározott számú karaktertől végeztük a cserét.

Mai cikkünkben ismét egy olyan témát fogunk érinteni a stringekkel kapcsolatban, amely a szövegszerkesztők mindenki által ismert funkcióit idézheti. Mivel ismerős témáról van szó, és már a stringek világában is jártas vagy, biztosak vagyunk benne, hogy mai leckénket sem fogod nehéznek találni. Vágjunk bele!

Aki már megpróbálta manipulálni a PHP-stringek kis- és nagybetűit, az biztosan hasznosnak fogja találni mai leckénket. A PHP-nek három olyan funkciója van, amely a kapitalizációhoz kapcsolódik: strtoupper, strtolower és ucwords. A funkciók neve első ránézésre furcsának tűnhet, de ha jobban megnézed őket, láthatod, hogy az angol kifejezésekre utalnak: string to upper, string to lower és uppercase words. Ha használtál már angol nyelvű szövegszerkesztőt, bizonyára tudod, hogy az uppercase a nagybetűkre, a lowercase pedig a kisbetűkre utal. Az uppercase words a szavak nagy kezdőbetűjére utal.

A string nagybetűsre való alakítása — strtoupper

A strtoupper funkciónak egy paramétere van — a string, melyet át akarunk alakítani úgy, hogy minden betűje nagybetű legyen. A funkció fogja a stringet és átalakítja. Csak az ábécé betűi lesznek átalakítva, a számok változatlanok maradnak. Lássunk egy egyszerű példát:

PHP-kód:

$original_string = 'Fun with Strings 1234';

$upper_case = strtoupper($original_string);

echo 'Régi string - ' . $original_string . ' <br />';
echo 'Új string - ' . $upper_case;

Megjelenítés a böngészőben:

Régi string - Fun with Strings 1234

Új string - FUN WITH STRINGS 1234

Mire használhatjuk ezt a funkciót? A strtoupper hasznos lehet, ha szeretnénk hangsúlyozni a szöveg egy fontos részét vagy a címet. Akkor is hasznos lehet, ha olyan betűtípust használunk, amelynek nagybetűi kiválóan mutatnak a weboldal stíluselemeiként.

Van azonban egy sokkal inkább technikai oka is a strtoupper funkció használatának: olyankor lehet hasznos, ha össze akarunk hasonlítani két stringet. Azzal, hogy azonos formára alakítjuk őket, elkerülhetjük annak a lehetőségét, hogy a stringek csak a kapitalizáció miatt nem fognak megegyezni.

A string kisbetűsre való alakítása — strtolower

A strtolower funkciónak szintén csak egy paramétere van — az a string, amelyet át szeretnénk alakítani úgy, hogy minden betűje kicsi legyen. A strtolower funkció átalakítja a stringet. Ebben az esetben is csak az ábécé betűi lesznek módosítva, a számok változatlanok maradnak. Lássunk egy egyszerű példát a strtolower funkcióra is:

PHP-kód:

$original_string = 'Fun with Strings 1234';

$upper_case = strtolower($original_string);

echo 'Régi string - ' . $original_string . ' <br />';
echo 'Új string - ' . $upper_case;

Megjelenítés a böngészőben:

Régi string - Fun with Strings 1234

Új string - fun with strings 1234

Nem túl bonyolult, nem igaz?

A kezdőbetű nagybetűre való alakítása — ucwords

A médiumok gyakran írják nagy kezdőbetűvel a cím minden szavát (főleg az angol nyelvterületen). A PHP kínál egy remek, időtakarékos megoldást erre.

PHP-kód:

$title_string = 'a title in nEED of Some help';

$uc_title_string = ucwords($title_string);

echo 'Régi cím - ' . $title_string . '<br />';
echo 'Új cím - ' . $uc_title_string;

Megjelenítés a böngészőben:

Régi cím - a title in nEED of Some help

Új cím - A Title In NEED Of Some Help

 

Megfigyelheted, hogy a „nEED” szó esetében csak a kezdőbetű változott meg, a szó többi betűje nagybetű maradt. Ha azt szeretnénk elérni, hogy csak az első betű legyen nagybetű a cím minden szava esetében, akkor a strtolower funkciót hívhatjuk segítségül, melyet az ucwords funkció fog követni. Nézzük, hogyan festene ez a gyakorlatban:

PHP-kód:

$title_string = 'a title in nEED of Some help';

$lowercase_title = strtolower($title_string);

$uc_title_string = ucwords($lowercase_title);

echo 'Régi cím - ' . $title_string . '<br />';
echo 'Új cím - ' . $uc_title_string;

Megjelenítés a böngészőben:

Régi cím - a title in nEED of Some help

Új cím - A Title In Need Of Some Help

 

Összegzés:

Mai leckénk még egy módszert mutatott arra, hogy szükség szerint módosítani tudjuk a stringeket. Most már kedved szerint váltogathatod a string kis- és nagybetűit, attól függően, hogy mire van szükséged. A ma tanult funkciók egyszerűnek tűnnek, de rengeteg unalmas munkától kímélik meg a programozót, és sok időt takarítanak meg.

Az oldal sütiket használ, hogy személyre szabjuk a tartalmakat és reklámokat, hogy működjenek a közösségi média funkciók, valamint hogy elemezzük a weboldal forgalmát. Bővebben a "Részletek mutatása" gombra olvashat.
Az oldal sütiket használ, hogy személyre szabja az oldalon megjelenő tartalmat és reklámokat.