Algoritmy s PHP

Ján Guniš, PF UPJŠ, Košice

 

Funkcie pre prácu s reťazcami

Reťazce v PHP majú dôležité postavenie, pretože veľké množstvo funkcií pre svoju prácu vyžaduje vstup vo formáte reťazca. Navyše aj výstupné hodnoty s formulárov sú reťazce. Pripomeňme si ešte, že reťazce sa zapisujú v úvodzovkách (") alebo v apostrofoch ('). Pokiaľ potrebujeme v reťazci zapísať úvodzovky, alebo iný špeciálny znak, použijeme escape sekvenciu \ (pozor escape sekvencie fungujú len v v reťazcoch v úvodzovkách). Znaky môžeme písať aj pomocou ich ASCII kódu v tvare \nnn (kde nnn je ASCII hodnota v osmičkovej sústave) alebo \xNN (kde NN je ASCII hodnota v šestnástkovej sústave). Pripomeňme ešte, že na zreťazenie reťazcov sa používa operátor ".". 

Príkaz Vysvetlenie
string AddSlashes(string) V reťazci nahradí všetky apostrofy, úvodzovky a spätnú lomku escape sekvenciou.
string Base64_Encode(string) Zakóduje reťazec pomocou Base64. Toto kódovanie je užitočné vtedy, keď potrebujeme preniesť binárne dáta cez vrstvu, ktorá nie je osembitová. (napríklad telo emailu).
string Base64_decode(string) Rozkóduje reťazec zakódovaný pomocou Base64.
string Chop(string) Odstráni medzery a tabulátory a konce riadkov (netlačiteľné znaky) z konca reťazca.
string Chr(integer) Vráti znak, ktorého ASCII kód je uvedený ako parameter.
string Crypt([kluc], string) Zašifruje reťazec pomocou Unixovej šifrovacej metódy DES. V praxi sa používa vtedy, keď potrebujeme zapisovať (napr. do súboru) heslá. Neexistuje funkcia, ktorá by zašifrovaný text vedela dešifrovať. Ak nepoužijeme kľúč (dvojznakový reťazec), PHP ho náhodne vygeneruje.
echo string Vypíše reťazec (ak je ako parameter uvedený výraz, je automaticky prevedený na string).
string EscapeShellCmd(string) Nahradí všetky "nebezpečné znaky" escape sekvenciou. Táto funkcia sa používa najmä vtedy, ak spúšťame (exec) externý program s parametrami, ktoré zadal užívateľ.
array Explode(string1, string2) Výsledkom je pole reťazcov, ktoré sú obsiahnuté v reťazci string2 oddelené reťazcom string1.
string Implode(array, string) Spojí prvky poľa zadaným textom do jedného reťazca.
integer Is_String(vyraz) Vráti true ak výraz je typu string.
string LTrim(string) Odstráni  medzery a tabulátory a konce riadkov (netlačiteľné znaky) zo začiatku reťazca.
string MD5(string) Vypočíta hodnotu hashovacej funkcie pre zadaný text. Výsledkom je 128bitové číslo, ktoré je s vysokou pravdepodobnosťou pre každý reťazec jedinečné. Dá sa použiť pre tvorbu digitálnych podpisov alebo pre overovanie kontroly integrity.
string NL2BR(string) Prevádza konce riadkov (\n) v reťazci na tag <BR>.
integer Ord(string) Vráti ASCII kód prvého znaku v reťazci.
Parse_Str(string) Analyzuje obsah reťazca (tak, ako keby reťazec bol uvedený na konci URL) a uloží ho do premenných.
string Str_Replace(string1, string2, string) Nahradí všetky výskyty reťazca string1 v reťazci string reťazcom string2.
integer StrCaseCmp(string1, string2) Porovná dva reťazce bez ohľadu na veľké a malé písmená. Ak string1<string2 vráti zápornú hodnotu, ak string1>string2 vráti kladnú hodnotu, ak sa rovnajú vráti nulu.
string StrChr(string1, string2) Nájde prvý výskyt znaku string2 v reťazci string1 a vráti obsah reťazca string1 od tohoto znaku až do konca.
integer StrCmp(string1, string2) Porovná dva reťazce s ohľadom na veľké a malé písmená. Ak string1<string2 vráti zápornú hodnotu, ak string1>string2 vráti kladnú hodnotu, ak sa rovnajú vráti nulu.
string StripSlashes(string) Odstráni všetky spätné lomky umiestnené pre citlivými znakmi.
string Strip_Tags(string1) Funkcia odstráni z reťazca string1 HTML a PHP značky.
string StrLen(string) Zistí dĺžku reťazca.
integer StrPos(string1, string2) Vráti pozíciu reťazca string2 v reťazci string1. Ak sa v ňom nenachádza, vráti false.
string StrRev(string) Obráti text v reťazci.
string StrRChr(string1, string2) Nájde v posledný výskyt znaku string2 v reťazci string1 a vráti obsah reťazca string1 až od tohto znaku do konca.
string StrStr(string1, string2) Nájde v reťazci string1 prvý výskyt reťazca string2 a vráti obsah reťazca string1 až od string2 do konca.
string StrToLower(string) Prevedie reťazec na malé písmená.
string StrToUpper(string) Prevedie reťazec na veľké písmená.
string StrTr(string, string1, string2) Prevádza znaky v reťazci string, podľa pravidla i-ty znak z reťazca string1 na i-ty znak z reťazca string2.
string SubStr(string, integer1, integer2) Vráti časť reťazca string od pozície integer1 dĺžky integer2. Ak je integer1 záporné číslo, počíta od konca. Ak je integer2 záporné číslo vrátený reťazec bude končiť integer2 znakov pred koncom reťazca.
string Trim(string) Odstráni  medzery a tabulátory a konce riadkov (netlačiteľné znaky) zo začiatku a z konca  reťazca.
string UCFirst(string) Prevedie prvé písmeno v reťazci z malého na veľké.
string UCWords(string) Prevedie prvé písmeno každého slova v reťazci z malého na veľké .