Függvény neve | Leírás |
---|---|
strlen | Szöveg hosszának meghatározása. (Eltérés van: ANSI és UTF-8 kódolásnál.) UTF-8 kódolásnál. A count_chars(), jó a eredményt ad vissza, egy feltétel beiktatásával. |
strstr | A megadott karakterlánc tetszőleges részét adja vissza. |
substr | Szöveg egy meghatározott részének kiválasztása. |
strcmp | Két string összehasonlítása. |
strpos | String keresése másik stringben. |
explode | Egy string szétdarabolása megadott elválasztó szerint |
implode | Tömb összefűzése egy string-be megadott elválasztóval. |
chr | ASCII kódértékhez tartozó string típusú karakteres értéket állítja elő. (Eltérés van: ANSI és UTF-8 kódolásnál.) |
ord | String típusú karakterhez tartozó, ASCII kódértéket állítja elő. |
Megjegyzés:
A PHP strlen, chr, ord, függvények alkalmazásánál figyelni kell, a fájl kódolására.
ANSI kódolásnál:
- Szerverre telepített php fájloknál, ékezetes karakterek hibásan jelennek meg.
- Otthon Windows rendszeren nincs probléma.
UTF-8 kódolásnál:
- strlen függvény: Minden ékezetes karaktert, 2-szer számol.
- chr függvény: Minden ékezetes karaktert, így jelöl:
Külső fájlból történő szövegek beolvasásakor, ha ékezetes karaktert is tartalmaz, a beolvasó PHP fájl és szöveget tartalmazó fájl kódolásának egyezni kell.
<?php $keresztnev = "Körte"; $vezeteknev = "Vilmos"; $teljes_nev = $vezeteknev . " " . $keresztnev; echo "A vezetéknév és keresztnév : <b>$teljes_nev</b>"; ?> |
Eredmény megjelenése: A vezetéknév és keresztnév : Vilmos Körte |
Ha, csak a változó nevét akarjuk kiíratni, a $ jel elé be kell írni egy vissza per ( \ ) jelet <?php $keresztnev = "Körte"; $vezeteknev = "Vilmos"; $teljes_nev = $vezeteknev . " " . $keresztnev; echo "A vezetéknév és keresztnév : <b> \$teljes_nev</b>"; ?> |
Eredmény megjelenése: A vezetéknév és keresztnév : $teljes_nev |
Oldal elejére!
Szerepe:
Gyakorlatban legtöbbször, űrlapok vagy adatlapok szövegmezőibe írt karakterlánc hosszának megállapítása.
Az űrlap vagy adatlap készítője, előre meghatározhatja, hogy az egyes adatmezőkbe hány karaktert kell minimum vagy maximum beírni.
Igénybe vehető a függvény, adatbázisban tárolásra kerülő adatok ellenőrzése során is.
- A karakterláncok (stringek) hosszát határozza meg.
- Hasznos, ha a stringben lévő karakterek számát kell meghatározni.
- Adatbázisban tárolásra kerülő adatok ellenőrzésekor is.
Példa:
Körte (5 karakter) + Vilmos (6 karakter) + a szóköz (1 karakter) = 12
Eredmények: ANSI kódolásnál = 12; UTF-8 kódolásnál = 13;
UTF-8 kódolásnál az ékezetes karaktereket, duplán számolja!
<?php $keresztnev = "Körte"; $vezeteknev = "Vilmos"; $teljes_nev = $vezeteknev. " " .$keresztnev; $sztringhossz = strlen ($teljes_nev); echo "A teljes név, karakterláncának hossza (száma): <b>$sztringhossz</b>"; ?> |
Eredmény megjelenése: A teljes név, karakterláncának hossza (száma): 13 |
<?php $dokument = "Ez egy dokumentum teljes tartalma. Milyen hosszú?"; $dokument_hossz = strlen ($dokument); echo "A teljes dokument, karakterláncának hossza: $dokument_hossz "; ?> |
Eredmény megjelenése: A teljes dokument, karakterláncának hossza: 50 |
Stringek hossza, azaz, száma. | |||
---|---|---|---|
PHP strlen() szerint. | JavaScript length szerint | ||
- Eger - Stringek száma: 4 - Egér - Stringek száma: 5 - Reszelek - Stringek száma: 8 - Rüszülök - Stringek száma: 11 - aeiou - Stringek száma: 5 - áéíóú - Stringek száma: 10 |
Stringek hossza, azaz, száma, UTF-8 kódolásnál. A strlen() és count_chars() szerint. |
---|
<php $hubetuk = "Szórakoztató! Á Í Ú"; // 19 string, szóközt is beleértve. $hubetuktomb=count_chars($hubetuk,1); $stringek =''; foreach ($hubetuktomb as $index => $adat) { if($index!=195 AND $index!=197) { $stringek = $stringek+$hubetuktomb[$index]; } } echo ' <p>Karakterlánc hossza, azaz, stringek száma:<br>'; echo ' Hibás a strlen() eredménye = '.strlen($hubetuk).'<br>'; echo ' Jó a count_chars() eredménye = '.$stringek.'</p>'; ?>Eredmény: |