Vyhledávání webu

PHP: práce s řetězci. PHP String Funkce

Stránky lze rozdělit na statické adynamické. Po osvojení HTML a CSS, které vám umožňují vytvořit krásnou vizitku na internetu, mnoho lidí přemýšlí, jak vytvořit dynamickou stránku v PHP. Současně by mělo rozložení vzít v úvahu, že nyní začíná studovat programování na webu: zásady práce s místem se liší. Jeden z prvních problémů, kterým začátečník v PHP čelí, je pracovat s řetězci, číst a zpracovávat je.

PHP pracuje s řetězci
Za zmínku stojí, že v PHP fungují funkceřetězce zahrnují velké množství metod, takže začátek studia je s nejjednodušší manipulací, jako je výstup řetězce, vyhledávání, získání nebo nahrazení podřetězec, změna registru a vracení délky řetězce. Mnoho funkcí nefunguje dobře s cyrilskými znaky. Proto jsou všechny příklady psány v angličtině pro přehlednost. Pro cyrilické řetězce se používají stejné funkce, ale s předponou mb_ (například mb_strpos ()). Před použitím analogů v php.ini je nutné oddělit linku; extension = php_mbstring.dll, stačí odstranit středník.

Vytváření a zobrazování řetězce

Budeme analyzovat výstup řetězce na obrazovku pomocí známého konstrukce jazyka echo. Programátor může vygenerovat řetězec najednou:

echo "Toto je nový řetězec"

nebo nejprve vytvořte proměnnou a poté ji zobrazte na obrazovce:

$ str = "Toto je nový řetězec";

echo $ str;

Pokud potřebujete zobrazit několik řádků v jednom, pak se uchýlí k jejich zřetězení:

echo "To". "Nové". "Řádek";

nebo

$ str1 = "Toto";

$ str2 = "Nový";

$ str3 = "String";

echo $ str1. $ str2. $ str3;

V druhém případě se zobrazí obrazovka Toto je nový řetězec. Okamžitě můžete přidat místo voláním echa:

echo $ str1. "". $ str2. "". $ str3;

V takovém případě se na obrazovce zobrazí: "Toto je nová linka". Zřetězení je možné nejen při výstupu, ale také při vytváření řetězce:

$ str1 = "Toto";

$ str2 = "Nový";

$ str3 = "String";

$ string = $ str1. "". $ str2. "". $ str3;

echo $ string;

Echo zobrazuje jak latinské písmena, tak i písmena cyrilika. Pokud některá z proměnných obsahuje číslo, pak po zřetězení bude toto číslo převedeno na odpovídající řádek:

$ i = 2;

$ sum = $ i + $ i; // $ $ součet obsahuje číslo 4

echo $ i. "+". $ i. "=". $ sum;

Na obrazovce se zobrazí: "2 + 2 = 4".

web na php

Symboly služeb

Řekněme, že řetězec je definován pomocí dvojitých uvozovek ($ string = "That's it"). Potom můžete řídit sekvence zcela klidně:

  • \ n provede přerušení řádku;
  • vrátí vozík;
  • \ "uniká dvojitá uvozovky:
    • echo "Řetězec s \" dvojitými uvozovkami "; // Řetězec s dvojitými uvozovkami
  • \ $ chrání dolar;
  • \\ uniká zpětné lomítko.

Sekvence jsou mnohem víc, najdete je všechny v oficiální dokumentaci PHP.

Jak najít pozici prvního výskytu podřetězec

Řekněme, že máme jednoduchou linku:

$ string = "Moje jméno je Yemelyan a mám 27 let";

Také máme dvě řádky s názvy:

$ název = "Yemelyan";

$ anotherName = "Katherin";

Musíme zjistit, zda první řádek obsahujetyto dvě jména. Chcete-li to provést, použijte funkci strpos ($ str, $ search). Vrací polohu vyhledávacího podřetězec $ search, pokud je tento řádek obsažen v originálu, $ str. V opačném případě funkce vrátí Boolean hodnotu false. Například strpos ($ string, $ otherName) vrátí false a strpos ($ string, $ name) je celé číslo. Kód bude takto (varianta zapíšeme, když se na obrazovce zobrazí pozice):

$ string = "Moje jméno je Yemelyan a mám 27 let";

$ název = "Yemelyan";

$ anotherName = "Katherin";

echo strpos ($ string, $ jinéName); // tisknout false

echo strpos ($ řetězec, $ název); // vytiskněte polohu prvního výskytu podřetězce

Všimněte si, že číslování řádků začíná od nuly, tj. V našem případě bude poslední řádek vytisknout číslo 11 (také jsou zvažovány mezery).

Vyhledání polohy posledních výskytů podřetězců a úskalí

Pokud funkce strpos () vrátí pozici prvního výskytu, funkce inverzní strrpos () vyhledá poslední výskyt podřetězec.

Tam jsou některé nástrahy spojené szačátek číslování. To stojí za zvážení: v PHP může být práce s řetězci komplikována omezeními v porovnávání. Takže je lepší nepoužívat porovnávací operaci s negací: strpos ($ str, $ search)! = False. V každém verzi PHP s ukázkami takové rovnocennosti nemusí fungovat správně, protože číslování řádek začíná na nule, a 0 logický výklad je falešný. To platí také pro funkci strrpos ().

Jak zjistit počet výskytů podřetězec

Často musíte najít místo první neboposlední výskyt podřetězce v řetězci a celkový počet podřetězců. K tomu použijte funkci substr_count (), která zpracovává alespoň dvě proměnné: substr_count ($ str, $ search). Vrátí celé číslo. Chcete-li omezit rozsah vyhledávání na řádek, předávají se další dvě proměnné: začátek a konec řádku. To znamená, že v tomto případě se funkce nazývá takto: substr_count ($ str, $ search, $ start, $ end). Funkce vyhledá vyhledávací řetězec $ v intervalu od $ start to $ end původního řetězce $ str. Pokud řetězec není nalezen, funkce se vrátí k nule.

web programování

Jak změnit případ řetězce v PHP: příklady

Změna registru je často používánaporovnání řetězců a podmíněných příkazů. Předpokládejme, že uživatel by měl zadat jméno nejvyššího boha ve skandinávské mytologii. Program má možnost "One", s níž bude uživatelská odezva porovnávána. Pokud zadaný text neodpovídá zadanému textu (například uživatel napíše "jeden" nebo "ONE"), program vrátí hodnotu false namísto true. Abyste tomu předešli, použije se funkce změny registru. To se často používá, pokud má web v PHP tagy: namísto stovek variant slov "personal" ("personal", "personal", "personal" atd.) Je pouze malá značka malá.

Funkce strtolower () změní případ na nižší. Předpokládejme, že existuje řádek $ catName = "Fluffy". Funkce strtolower ($ catName) vrací řetězec "načechraný". Změňte registr na horní pomocí funkce strtoupper ().

Jak najít délku řetězce v PHP: pracovat s funkcemi

Často je nutné najít délku řetězce. Například v PHP budete možná muset pracovat s linkami tohoto typu při vytváření smyčky. Chcete-li najít řetězec, použijte funkci strlen (), která vrátí číslo - počet znaků. Nesmíme zapomenout, že poslední znak bude mít číslo strlen ($ str) -1, protože číslování začíná od nuly.

php práce

Získávání a nahrazení podřetězců v PHP: práce s řetězci

Podřetězec je získán funkcísubstr (), který může mít dva nebo tři argumenty: substr ($ str, $ start, $ end). Předpokládejme, že máme řetězec $ string = "Fluffy cat" a chceme získat substring od druhého do čtvrtého znaku. Protože číslování začíná od nuly, bude proměnná s tímto podřetězcem vypadat takto: $ newString = substr ($ string, 1, 4). Pokud zadáme $ newString = substr ($ string, 1), získáme podřetězec od druhého znaku k poslednímu znaku (tj. "Luffy"). Tento kód je shodný s kódem celé řady pomocí strlen (): substr ($ string, 1, strlen ($ string)).

Chcete-li nahradit podřetězec, použijte funkcistr_replace (), který obsahuje tři proměnné: str_replace ($ subStr, $ newSub, $ str). Na rozdíl od mnoha funkcí str_replace () pracuje správně s cyrilikovými symboly a nemá analog s předponou. Příklad:

$ str = "Dnes je strašné počasí!";

$ newStr = str_replace ("hrozný", "úžasný", $ str); // Dnes je nádherné počasí!

Převedení řetězce na číslo

php příklady
Každý, kdo studuje webové programování, brzynebo později je nutné přeložit řetězec do čísla. Pro tento účel se používají dvě podobné funkce: intval () a floatval (), z nichž každá má jeden proměnný $ řetězec. Odlišují se od sebe pouze v typu vrácených dat: intval () vrací celé číslo a floatval () je číslo s plovoucí desetinnou čárkou.

Chcete-li použít jak intval (), tak floatval ()Je nutné, aby linka začínala číslicemi a budou převedena na číslo. Pokud po číslicích jde o libovolnou sadu dopisů, jsou jednoduše ignorovány. V případě, že řetězec začíná písmeny, použití funkce se vrátí k nule. V ideálním případě by linka měla obsahovat pouze čísla.

Převedení čísla na řetězec

Často je třeba přeložit čísla do řetězce. Například, pokud chcete, aby polovinu a postavit náměstí (například zkontrolovat, zda je splněna rovnice: 88 x 88 + 33 x 33 = 8833). V tomto případě se použije funkce strval (), která vrátí řetězec s číslem. Poté můžete provést všechny další akce s novým řádkem: změnit, vyhledávat výskyt podřetězce a další funkce. Je-li to nutné, linku lze znovu přeložit do čísla již popsaného výše.

php řetězcové funkce
V článku je jen malá částfunkce spojené s řetězci. Některé z neopísaných funkcí pracují se symboly, ale velká nebyla v materiálu obsažena kvůli specifičnosti. Chcete-li se seznámit s těmito funkcemi, musíte přejít na oficiální dokumentaci PHP, která zobrazuje nejnovější informace.

</ p>
  • Hodnocení: