RekenaarsProgrammering

PHP: string manipulasie. PHP se string funksies

Terreine kan verdeel word in statiese en dinamiese. Na bemeestering van HTML en CSS, wat dit moontlik maak om 'n pragtige business card op die Internet te maak, baie dink hoe om 'n dinamiese werf met PHP skep. In hierdie kodeerder moet in ag neem dat hy nou begin om web programmering leer: hoe om te werk met die webwerf sal anders wees. Een van die eerste probleme wat 'n beginner in PHP - werk string, lees en hulle verwerk.

Dit is opmerklik dat in PHP string manipulasie funksies behels 'n aantal metodes, so hulle studiekoste begin met 'n paar eenvoudige manipulasies, soos die onttrekking lyn, soek, verkryging of vervanging van 'n substring, registreer die verandering en terug te keer na die lyn lengte. Baie van die funksies nie goed werk met Cyrilliese karakters. Daarom is al die voorbeelde in Engels geskryf vir duidelikheid. Vir Cyrilliese rye dieselfde funksies gebruik word, maar met die voorvoegsel mb_ (bv mb_strpos ()). Voor die gebruik van analoë in php.ini jy die lyn moet uncomment; verlenging = php_mbstring.dll, eenvoudig deur die verwydering van die kommapunt.

Skep en skryf van 'n string

Ons sal analiseer die lyn uitset na die skerm met behulp van die taal bekend geword aan al eggo die ontwerp. Die programmeerder kan direk uitset n string:

eggo "Hierdie nuwe lyn"

of eerste skep 'n veranderlike en dan wys dit:

$ Str = "Dit is 'n nuwe string";

echo $ str;

As jy wil veelvuldige lyne vertoon in een of wend om hul aaneenskakellling:

eggo "Dit". "Nuwe". "String";

of

$ Str1 = "Hierdie";

$ Str2 = "nuwe";

$ Str3 = "string";

echo $ str1. $ Str2. $ Str3;

In die laasgenoemde geval, sal dit EtoNovayaStroka vertoon. Die gaping kan direk bygevoeg in die oproep eggo:

echo $ str1. ''. $ Str2. ''. $ Str3;

In hierdie geval, die skerm vertoon: ". Hierdie nuwe lyn" Aaneenskakellling is moontlik nie net in die uitset, maar ook om lyne te skep:

$ Str1 = "Hierdie";

$ Str2 = "nuwe";

$ Str3 = "string";

$ String = $ str1. ''. $ Str2. ''. $ Str3;

echo $ string;

Echo vertoon beide briewe, en Cyrilliese. As een van die veranderlikes die aantal vervat, sal dan die aaneenskakeling van hierdie getal omgeskakel word na die toepaslike reël:

$ I = 2;

$ Som = $ i + $ i ; // nou $ som bevat die nommer 4

echo $ i. "+". $ I. "=". $ Som;

Sal vertoon word: "2 + 2 = 4".

spesiale karakters

Veronderstel die lyn word gedefinieer deur 'n dubbel-aanhaling ($ string = "Dit is hoe"). Dan kan jy baie gelukkig gebruik die ontsnapping rye:

  • \ N maak 'n lynbreuk;
  • \ R enter;
  • \ "Escapades die dubbele aanhalingstekens:
    • eggo "Die string \" double \ "aanhalings"; // string met 'n dubbele "aanhalings
  • \ $ Shields die dollar;
  • \\ agteroorskuinsstreep ontsnap.

Rye baie meer, kan almal van hulle word gevind in die amptelike PHP dokumentasie.

Vind posisie van eerste voorkoms

Gestel ons het 'n eenvoudige string:

$ String = "My naam is Yemelyan en ek is 27 jaar oud";

Ons het ook twee rye name:

$ Name = "Yemelyan";

$ AnotherName = "Katherin";

Ons moet weet of die eerste reël van die twee name. Dit maak gebruik van strpos funksie ($ str, $ search). Dit gee die posisie van die gewenste substring $ search As die string is vervat in die aanvanklike, $ str. Anders, die funksie gee terug 'n Boolese waarde vals. Byvoorbeeld, strpos ($ string, $ anotherName) gee terug vals, en die strpos ($ string, $ naam) - 'n heelgetal. Die kode sal so (skryf opsie, wanneer die posisie vertoon op die skerm) wees:

$ String = "My naam is Yemelyan en ek is 27 jaar oud";

$ Name = "Yemelyan";

$ AnotherName = "Katherin";

eggo strpos ($ string, $ anotherName ); // uitgange vals

eggo strpos ($ string, $ naam ); // vertoon die posisie van die eerste voorkoms van 'n string

Let daarop dat lyn Nommering begin by nul, dit wil sê, in ons geval die laaste reël gee die nommer 11 (ruimtes is ook oorweeg word).

Soek posisie van die laaste voorkoms van 'n substring en slaggate

As die strpos () funksie gee terug Die posisie van die eerste voorkoms, dan is sy inverse strrpos () soektogte vir die laaste voorkoms van 'n substring.

Daar is 'n paar slaggate wat verband hou met die begin van die nommeringstelsel. Dit moet in ag neem: In PHP string manipulasie kan bemoeilik deur beperkings in vergelyking. So, is dit beter die vergelyking operasie te gebruik met 'n ontkenning: strpos ($ str, $ search) = vals !. In 'n weergawe van PHP met voorbeelde van sulke ekwivalensie kan nie korrek werk nie, want die lyn nommers begin by nul, en 0 logiese interpretasie is vals. Dit strek tot strrpos () funksie.

Hoe om die aantal substring voorvalle vind

Dikwels wat jy nodig het om uit te vind is nie die eerste of laaste voorkoms van 'n substring in die tou, en die totale aantal. Vir hierdie doel substr_count () funksie, waarvan ten minste twee veranderlikes hanteer: substr_count ($ str, $ search). Dit gee 'n heelgetal. As jy wil hê dat die omvang van die soektog op die lyn te verminder, die funksie geslaag nog twee veranderlikes: die begin en einde van die lyn, onderskeidelik. Dit is die funksie in hierdie geval is genoem as: substr_count ($ str, $ search, $ begin, $ einde). Die funksie sal kyk vir substring $ search in die interval vanaf $ begin om $ einde van die oorspronklike string $ str. As die string nie gevind word, die funksie gee terug nul.

Hoe om die saak te verander van lyne in die PHP: voorbeelde

Verandering geval word dikwels gebruik om snare en vergelyk conditionals. Kom ons sê die gebruiker moet die naam van die oppergod in te voer Noorse mitologie. Die program is 'n weergawe van "Een", met wie hy sal vergelyk word met reaksie van die gebruiker. As die ingevoerde teks sal anders wees van die bestaande (byvoorbeeld, 'n gebruiker skryf 'n "een" of "een"), sal die program return false in plaas van ware. Om dit te voorkom, gebruik die funksie register veranderinge. Dit word dikwels gebruik as die site is in PHP tags: In plaas van honderde variasies van die woord "private" (.. "Private", "private", "persoonlike" en so aan) daar is net een tag in klein.

strtolower () funksie verander die laer register. Gestel daar is 'n lyn $ catName = "Fluffy". strtolower funksie ($ catName) gee terug Die string "sagte". Verandering na die boonste geval via strtoupper () funksie.

Hoe om die lengte van 'n string in PHP vind: Werk met funksies

Dikwels is dit nodig om die lengte van die string te vind. Byvoorbeeld, in PHP werk met snare van hierdie aard mag in die skepping siklus word vereis. Vir die soektog string gebruik StrLen () funksie, wat 'n aantal keer terug - die aantal karakters. Ons moet nie vergeet dat die laaste karakter 'n aantal StrLen ($ str) -1 sal hê, as die nommers begin met 'n nul.

Verkryging en vervanging substring in PHP: Werk met snare

Aan die substring substr funksie uitgevoer word () wat twee of drie argumente kan neem: substr ($ str, $ begin, $ einde). Kom ons sê ons het 'n string $ string = "Fluffy cat", en ons wil 'n substring vanaf die tweede kry om die vierde karakter. Sedert Nommering begin by nul, sal hierdie substring van die veranderlike lyk soos hierdie: $ newString = substr ($ string, 1, 4). As ons stel die $ newString = substr ($ string, 1), kry ons 'n substring vanaf die tweede tot die laaste karakter (dws "Luffy"). Hierdie kode is identies aan die volle kode string met behulp van StrLen (): substr ($ string, 1, StrLen ($ string)).

Om die substring vervang is gebruik str_replace () funksie wat drie veranderlikes neem: str_replace ($ subStr, $ newSub, $ str). In teenstelling met baie funksies, str_replace () werk korrek met Cyrilliese karakters en het geen analoog voorafgegaan. byvoorbeeld:

$ Str = "die weer is vandag verskriklik!";

$ NewStr = str_replace ( "verskriklike", "wonderlik", $ str); // Vandag is die wonderlike weer!

Vertaling string na 'n aantal

Enigiemand wat web programmering bestudeer, vroeër of later moet die string te skakel na 'n nommer. Vir hierdie doel, is twee soortgelyke funksies gebruik: intval () en floatval (), wat elkeen ontvang een veranderlike $ string. Van mekaar, hulle verskil slegs deur die tipe van data teruggestuur: intval () gee terug 'n heelgetal, en floatval () - floating point nommer.

Vir gebruik as 'n intval (), en floatval () vereis dat die string begin met 'n nommer, en hulle sal omgeskakel word na 'n nommer. As die getalle enige stel briewe gaan, hulle ignoreer dit net. In daardie geval, indien die lyn begin met die letters, die gebruik van die funksie sal terugkeer nul. Die ideaal is dat die lyn net syfers bevat.

Vertaling van 'n string

Dikwels nodig om die aantal te omskep in 'n string. Byvoorbeeld, as jy wil die helfte van dit neem en om 'n vierkant te rig (byvoorbeeld, kyk of die vergelyking is tevrede: 88 x 88 + 33 x 33 = 8833). In hierdie geval, die funksie strval (), wat 'n string aantal terugkeer. Na hierdie 'n nuwe lyn, kan jy al die ander aksies uit te voer: wysig, vind 'n voorkoms van die substring, en ander funksies. Indien nodig, die lyn kan weer herlei na die aantal reeds hierbo beskryf.

Die artikel is beskou as slegs 'n klein deel van al die funksies wat verband hou met die lyn. Deel van ongedokumenteerde funksies werk met simbole, maar die meeste het nie ingesluit in die materiaal as gevolg van die spesifisiteit. Om vertroud te raak met hierdie funksies word is nodig om voort te gaan om die amptelike dokumentasie oor PHP, wat huidige inligting vertoon lees.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 af.unansea.com. Theme powered by WordPress.