Svetainės gali būti suskirstytos į statinius irdinamiškas. Įvaldę HTML ir CSS, kurie leidžia jums padaryti gražią vizitinę kortelę internete, daugelis žmonių galvoja, kaip kurti dinaminę svetainę PHP. Tuo pačiu metu, išdėstymas turėtų atsižvelgti į tai, kad dabar jis pradeda studijuoti interneto programavimą: darbo su svetainės principai bus skirtingi. Viena iš pirmųjų problemų, su kuria susiduria PHP pradedantieji, dirba su stygomis, skaito ir tvarko juos.
Mes analizuosime string'o išvestį ekrane naudodami susipažintą kalbos konstrukciją. Programuotojas vienu metu gali išvesti eilutę:
echo "This is New String"
arba pirmiausia sukurkite kintamąjį, tada parodykite jį ekrane:
$ str = "Tai yra nauja eilutė";
echo $ str;
Jei jums reikia parodyti keletą eilučių vienoje, tada jie naudojasi jų sujungimu:
echo "It". "Naujas". "Linija";
arba
$ str1 = "This";
$ str2 = "Naujas";
$ str3 = "Styginiai";
echo $ str1. $ str2. $ str3;
Pastaruoju atveju bus rodomas ekranas Tai yra "NewString". Jūs galite nedelsdami pridėti erdvę, skambindami echo:
echo $ str1. "". $ str2. "". $ str3;
Šiuo atveju ekrane pasirodys: "Tai yra nauja eilutė". Susijungimas yra įmanomas ne tik išvedant, bet ir kurdami eilutę:
$ str1 = "This";
$ str2 = "Naujas";
$ str3 = "Styginiai";
$ string = $ str1. "". $ str2. "". $ str3;
echo $ string;
Echo rodo tiek lotyniškus, tiek kirilicius raides. Jei viename iš kintamųjų yra skaičius, tada įjungiant šį skaičių bus paversta atitinkama eilutė:
$ i = 2;
$ sum = $ i + $ i; / / Dabar $ sumą sudaro numeris 4
echo $ i. "+". $ i. "=". $ suma;
Ekrane pasirodys: "2 + 2 = 4".
Tarkime, kad eilutė apibrėžta naudojant dvigubas kabutes ($ string = "This is it"). Tada galite naudoti kontrolės sekas ramiai:
Sekos yra daug daugiau, juos visus galite rasti oficialiojoje PHP dokumentacijoje.
Tarkime, kad turime paprastą eilutę:
$ string = "Mano vardas yra Yemelyan ir aš esu 27 metų";
Taip pat turime dvi eilutes su pavadinimais:
$ name = "Yemelyan";
$ anotherName = "Katherin";
Mums reikia sužinoti, ar yra pirmoji eilutėŠie du pavadinimai. Jis naudoja strpos funkciją ($ str, $ paieška). Ji grąžina norimą eilutės $ paieškoje poziciją, jei eilutė yra įtrauktas į pradinio, $ str. Priešingu atveju, funkcija grąžina loginę reikšmę FALSE. Pavyzdžiui, strpos ($ string $ anotherName) False, o strpos ($ string, $ vardas) - sveikasis skaičius. Kodas bus tokia (rašymo variantą, kai pozicija yra rodomas ekrane):
$ string = "Mano vardas yra Yemelyan ir aš esu 27 metų";
$ name = "Yemelyan";
$ anotherName = "Katherin";
echo strpos ($ string, $ anotherName); // spausdinti klaidingai
echo strpos ($ string, $ name); // spausdinti pirmojo požymio atsiradimo vietą
Atkreipkite dėmesį, kad eilučių numeracija prasideda nuo nulio, tai yra mūsų atveju, paskutinė eilutė išspausdins skaičių 11 (taip pat atsižvelgiama į tarpus).
Jei funkcija strpos () grąžina pirmojo įvykio padėtį, atvirkštinė strrpos () funkcija ieško paskutinio substringo atsiradimo.
Yra keletas su tuo susijusių nepatogumųnumeracijos pradžia. Tai verta apsvarstyti: PHP, dirbant su stygomis, gali apsunkinti palyginimų apribojimai. Taigi, geriau nenaudoti palyginimo operacijos su negacija: strpos ($ str, $ search)! = Klaidinga. Bet kurioje PHP versijoje pavyzdžiai su tokiu lygiaverčiu gali veikti netinkamai, nes eilučių numeravimas prasideda nuo nulio, o loginis vertimas 0 yra klaidingas. Tai taip pat taikoma ir strrpos () funkcijai.
Dažnai jums reikia rasti ne pirmojo arbapaskutinysis eilutėje esančio substringo atsiradimas ir bendras substratų skaičius. Norėdami tai padaryti, naudokite funkciją substr_count (), kuri apdoroja bent du kintamuosius: substr_count ($ str, $ search). Grąžina sveiką skaičių. Jei norite sumažinti paieškos sritį eilutėje, tada funkcijai perduodami dar du kintamieji: atitinkamai eilutės pradžia ir pabaiga. Tai reiškia, kad šiuo atveju funkcija vadinama tokia: substr_count ($ str, $ search, $ start, $ end). Funkcija ieškos substring $ search intervalo nuo $ start iki $ end of the original string $ str. Jei eilutė nerasta, funkcija grąžins nulį.
Dažnai naudojamas registro keitimasStyginių ir sąlyginių teiginių palyginimas. Tarkime, kad vartotojas turėtų įvesti aukščiausiojo dievo vardą Skandinavijos mitologijoje. Programa turi parinktį "Vienas", su kuria bus lyginamas vartotojo atsakymas. Jei įvestas tekstas neatitinka to, kurį turite (pvz., Vartotojas parašys "vienas" arba "VIENAS"), programa grąžins neteisingą, o ne tiesą. Norėdami to išvengti, naudojama registro keitimo funkcija. Tai dažnai naudojamas, jei svetainė yra PHP tags: Vietoj šimtus variantų žodžio "privatu" (.. "Asmeninis", "privatus", "asmens" ir tt) yra tik vienas žymė mažosiomis raidėmis.
Funkcija strtolower () pakeičia korpusą į apatinę. Tarkime, yra eilutė $ catName = "Fluffy". Funkcija strtolower ($ catName) grąžina eilutę "purus". Pakeiskite registrą į viršutinę, naudodami strtoupper () funkciją.
Dažnai reikia rasti eilutės ilgį. Pavyzdžiui, PHP, galbūt turėsite dirbti su tokiomis eilutėmis kuriant loopą. Norėdami rasti eilutę, naudokite strlen () funkciją, kuri grąžina skaičių - simbolių skaičių. Nepamirškime, kad paskutinis simbolis turi strlen ($ str) -1 skaičių, nes numeravimas prasideda nuo nulio.
Pavadinimas yra gaunamas pagal funkcijąsubstr (), kuris gali būti dviejų ar trijų argumentų: substr ($ str, $ start, $ end). Tarkime, turime eilutę $ string = "Fluffy cat", ir mes norime gauti antraštę iš antrojo iki ketvirto simbolio. Kadangi numeravimas prasideda nuo nulio, kintamasis su šia substrine atrodys taip: $ newString = substr ($ string, 1, 4). Jei įvesime $ newString = substr ($ string, 1), mes gauname antraštę iš antrojo simbolio iki paskutinio simbolio (ty "luffy"). Šis kodas yra identiškas visam eilučių kodui, naudojant strlen (): substr ($ string, 1, strlen ($ string)).
Norėdami pakeisti substring, naudokite funkcijąstr_replace (), kuris trims kintamiesiems: str_replace ($ subStr, $ newSub, $ str). Skirtingai nuo daugelio funkcijų, str_replace () veikia teisingai su kirilicos simboliais ir neturi analogo su prefiksu. Pavyzdys:
$ str = "Šiandien yra baisus oras!";
$ newStr = str_replace ("baisus", "nuostabus", $ str); / / Šiandien yra puikus oras!
Norėdami naudoti tiek intval (), tiek floatval ()Būtina, kad linija prasideda skaičiais, ir jie bus paversti skaičiumi. Jei po skaitmenų eina bet koks raidžių rinkinys, jie tiesiog ignoruojami. Jei eilutė prasideda raidėmis, funkcijos naudojimas grįš nulį. Idealiu atveju linijoje turėtų būti tik skaičiai.
Dažnai reikia išversti numerius į eilutę. Tarkime, jei reikia paimti pusę numerio ir pakelti jį (pvz., Patikrinkite, ar įvykdyta lygybė: 88 x 88 + 33 x 33 = 8833). Tokiu atveju naudojama funkcija strval (), kuri grąžina eilutę su skaičiumi. Po to jūs galite atlikti visus kitus veiksmus su nauja eilute: pakeisti, ieškoti substringų atsiradimo ir kitų funkcijų. Jei reikia, linija gali būti išversta į jau aprašytą aukščiau aprašytą skaičių.