Mga computerProgramming

PHP: string manipulasyon. string function ng PHP

Sites ay maaaring nahahati sa static at dynamic. Pagkatapos mastering HTML at CSS, na kung saan ay nagbibigay-daan upang makagawa ng isang magandang card negosyo sa Internet, marami ang nag-iisip kung paano lumikha ng isang dynamic na site na may PHP. Sa ganitong coder ay dapat isinasaalang-alang na ngayon siya ay nagsisimula upang matuto ng web programming: kung paano upang gumana ang site ay naiiba. Ang isa sa mga unang problema na nakatagpo ng isang baguhan sa PHP - work string, pagbabasa at iproseso ang mga ito.

Ito ay nagkakahalaga ng pagpuna na sa PHP string manipulasyon function magdawit ng isang bilang ng mga paraan, sa gayon upang simulan ang kanilang mga gastos sa pag-aaral na may ilang simpleng manipulations, tulad ng withdrawal line, paghahanap, pagkuha o pagpapalit ng isang substring, magparehistro ang pagbabago at bumalik sa haba linya. Marami sa mga pag-andar ay hindi gumagana nang maayos sa Cyrillic character. Samakatuwid, ang lahat ng mga halimbawa ay nakasulat sa Ingles para sa kaliwanagan. Para sa Cyrillic hilera ng parehong mga function ay ginagamit, ngunit may prefix mb_ (hal, mb_strpos ()). Bago gamitin analogues sa php.ini kailangan mong uncomment ang linya; extension = php_mbstring.dll, sa pamamagitan lamang ng pag-alis ng semicolon.

Ang paglikha at pagsusulat ng isang string

Susubukan naming pag-aralan ang linya output sa screen gamit ang wika na kilala sa lahat ng echo ang disenyo. Ang programista maaaring direktang output ng isang string:

echo "Ang bagong linya"

o unang lumikha ng isang variable at pagkatapos ay ipakita ito:

$ Str = "Ito ay isang bagong string";

echo $ str;

Kung nais mong magpakita ng maramihang mga linya sa isa o resorting sa kanilang pagdudugtong:

echo "Ito". "Bago". "String";

o

$ Str1 = "Ito";

$ Str2 = "bagong";

$ Str3 = "string";

echo $ str1. $ Str2. $ Str3;

Sa huli kaso, ipapakita nito EtoNovayaStroka. Ang agwat ay maaaring idagdag direkta sa tawag echo:

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

Sa kasong ito, ipinapakita ng screen: ". Ang bagong linya" Pagdudugtong ay posible hindi lamang sa ang output, ngunit din upang lumikha ng mga linya:

$ Str1 = "Ito";

$ Str2 = "bagong";

$ Str3 = "string";

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

echo $ string;

Echo ay nagpapakita ng parehong mga titik, at Cyrillic. Kung ang isa sa mga variable na nakapaloob ang numero, pagkatapos ay ang pagdudugtong ng mga numero na ito ay mako-convert sa naaangkop na linya:

$ I = 2;

$ Sum = $ i + $ i ; // ngayon $ sum ay naglalaman ng mga numero ng 4

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

Ipapakita: "2 + 2 = 4".

mga espesyal na karakter

Ipagpalagay na ang linya ay tinukoy sa pamamagitan ng isang double-quote ($ string = "Ito ay kung paano"). Pagkatapos ay maaari mong ganap maligaya gamitin ang mga pagkakasunud-sunod escape:

  • \ N gumagawa ng isang line break;
  • \ R pagbalik ng carriage;
  • \ "Escapes ang double quotation marks:
    • echo "Ang string \" double \ "quotes"; // string na may "double" quotes
  • \ $ Shields ang dollar;
  • \\ backslash escapes.

Mga pagkakasunud-sunod marami pang iba, lahat ng mga ito ay matatagpuan sa opisyal na dokumentasyon ng PHP.

Hanapin ang posisyon ng unang paglitaw

Ipagpalagay na kami ay may isang simpleng string:

$ String = "Ang pangalan ko ay Yemelyan at ako 27 taong gulang";

Mayroon din kaming dalawang mga hanay ng mga pangalan:

$ Name = "Yemelyan";

$ AnotherName = "Katherin";

Kailangan naming malaman kung ang mga unang linya ng dalawang pangalan. Ito ay gumagamit ng strpos function ($ str, $ sa paghahanap). Ito ay nagbabalik ang posisyon ng ang nais na substring $ sa paghahanap, kung ang string ay nilalaman sa unang, $ str. Sa kabilang banda, ang function ay nagbabalik ng isang Boolean halaga hindi totoo. Halimbawa, strpos ($ string, $ anotherName) nagbalik false, at ang strpos ($ string, $ pangalan) - isang integer. Ang code ay tulad (write pagpipiliang ito, kapag ang posisyon ay ipinapakita sa screen):

$ String = "Ang pangalan ko ay Yemelyan at ako 27 taong gulang";

$ Name = "Yemelyan";

$ AnotherName = "Katherin";

echo strpos ($ string, $ anotherName ); // output bulaang

echo strpos ($ string, $ name ); // nagpapakita ng mga posisyon ng unang paglitaw ng isang string

Tandaan na linya numbering nagsisimula sa zero, iyon ay, sa aming kaso ang huling linya ay nagpapakita ng mga numero ng 11 (mga puwang ay isinasaalang-alang din).

Search posisyon ng huling paglitaw ng isang substring at pitfalls

Kung ang strpos () function ay nagbalik ang posisyon ng ang unang paglitaw, pagkatapos nito kabaligtaran strrpos () paghahanap para sa huling pangyayari ng isang substring.

May mga ilang mga pitfalls na kaugnay sa simula ng pagnunumero. Dapat itong isaalang-alang: Sa PHP string pagmamanipula ay maaaring maging kumplikado sa pamamagitan ng paghihigpit sa paghahambing. Kaya, ito ay mas mahusay na hindi gamitin ang paghahambing na operasyon na may isang hindi pagsang-: strpos ($ str, $ search) = false !. Sa anumang bersyon ng PHP mga halimbawa ng gayong equivalence ay maaaring hindi gumana nang tama, dahil ang linya numero ay nagsisimula sa zero, at 0 lohikal na interpretasyon ay hindi totoo. Ito ay umaabot sa strrpos () function.

Paano upang mahanap ang bilang ng substring mga paglitaw

Kadalasan kailangan mo upang mahanap ay hindi ang una o huling pangyayari ng isang substring sa string, at ang kabuuang bilang. Para sa layuning ito substr_count () function, na humahawak ng hindi bababa sa dalawang variable: substr_count ($ str, $ sa paghahanap). Ito ay nagbabalik ng isang integer. Kung nais mong bawasan ang saklaw ng paghahanap sa linya, ang function na lumipas ang dalawang higit pang mga variable: sa simula at dulo ng linya, ayon sa pagkakabanggit. Iyon ay ang function na sa kasong ito ay tinatawag bilang: substr_count ($ str, $ paghahanap, $ start, $ end). Ang function na ay tumingin para sa substring $ paghahanap sa agwat mula sa $ magsimula sa $ wakas ng orihinal na string $ str. Kung ang string ay hindi natagpuan, ang function ay nagbabalik zero.

Paano baguhin ang mga kaso ng mga linya sa PHP: halimbawa

Baguhin kaso ay madalas na ginagamit upang ihambing ang mga string at conditionals. Sabihin nating ang user ay dapat ipasok ang pangalan ng kataas-taasang diyos sa mitolohiyang Norse. Ang programa ay isang bersyon ng "One", na kasama na siya ay inihambing sa pagtugon ng gumagamit. Kung ang ipinasok na teksto ay maaaring naiiba mula sa mga umiiral (halimbawa, ang isang gumagamit magsusulat isang "one" o "isa"), ang programa ay babalik false halip ng totoo. Upang maiwasan ito, gamitin ang mga pagbabago function na magparehistro. Ito ay madalas na ginagamit kung ang site ay sa PHP tags: Sa halip ng daan-daang mga variant ng salitang "private" (.. "Private," "pribadong", "personal" at iba pa) mayroon lamang isang tag sa lowercase.

strtolower () function na pagbabago sa mas mababang rehistro. Ipagpalagay doon ay isang linya $ catName = "Fluffy". strtolower function ($ catName) ay nagbabalik ng mga string "malambot". Baguhin sa itaas na kaso ay maaaring sa pamamagitan ng strtoupper () function.

Paano upang mahanap ang haba ng isang string sa PHP: Paggawa gamit ang mga pag-andar

Kadalasan kailangan nito upang mahanap ang haba ng string. Halimbawa, sa PHP sa trabaho na may mga string ng ganitong uri ay maaaring kinakailangan sa ikot ng paglikha. Para sa mga string sa paghahanap na ginamit strlen () function, na kung saan ay nagbabalik ng isang numero ng - ang bilang ng mga character. Hindi namin dapat kalimutan na ang huling character ay may numerong strlen ($ str) -1, tulad ng paglalagay ng bilang ay nagsisimula sa zero.

Pagkuha at kapalit substring sa PHP: Paggawa gamit ang mga string

Getting substring substr function na ay isinasagawa () na maaaring tumagal ng dalawa o tatlong argumento: substr ($ str, $ start, $ end). Sabihin nating mayroon kami ng isang string $ string = "Fluffy cat", at gusto naming upang makakuha ng isang substring mula sa pangalawang sa ika-apat na character. Dahil may bilang na nagsisimula sa zero, ito substring ng variable ay maging ganito ang hitsura: $ newString = substr ($ string, 1, 4). Kung kami ay kitang ipakilala ang $ newString = substr ($ string, 1), makakakuha tayo ng isang substring mula sa pangalawang sa huling character (ibig sabihin "luffy"). Ang code na ito ay kapareho ng buong string ng code gamit strlen (): substr ($ string, 1, strlen ($ string)).

Upang palitan ang substring ay ginagamit str_replace () function na tumatagal ng tatlong variable: str_replace ($ substr, $ newSub, $ str). Hindi tulad ng maraming mga pag-andar, str_replace () gumagana nang tama sa mga character na Cyrillic at walang analog may prefix. halimbawa:

$ Str = "Ngayon ang panahon ay kakila-kilabot!";

$ NewStr = str_replace ( "kahila-hilakbot", "kahanga-hangang", $ str); // Ngayon ang kahanga-hangang panahon!

Translation string sa isang bilang

Sinuman na nag-aral sa web programming, maaga o huli ay may upang i-convert ang string sa isang numero. Para sa layuning ito, dalawang mga katulad na pag-andar ay ginagamit: intval () at floatval (), ang bawat isa na natatanggap ng isang variable $ string. Mula sa bawat isa, naiiba lamang sila sa pamamagitan ng mga uri ng data na ibinalik: intval () ay nagbabalik ng isang integer, at floatval () - lumulutang na tuldok numero.

Para sa paggamit bilang intval (), at floatval () ay nangangailangan na ang mga string ay nagsisimula sa isang numero, at sila ay na-convert sa isang numero. Kung ang mga numero ay mapupunta sa anumang hanay ng mga titik, sila balewalain lang ito. Sa kasong iyon, kung ang linya ay nagsisimula sa mga titik, ang paggamit ng pag-andar ay babalik sa zero. May perpektong, ang linya ay dapat maglaman lamang mga digit.

Translation ng isang string

Madalas na kailangan i-convert ang numero sa isang string. Halimbawa, kung gusto mong kumuha ng kalahati ng mga ito at upang magtayo ng isang parisukat (halimbawa, suriin kung ang equation ay nasiyahan: 88 x 88 + 33 x 33 = 8833). Sa kasong ito, ang pag-andar strval (), na nagbabalik ng isang string number. Pagkatapos nito isang bagong linya, maaari mong isagawa ang lahat ng iba pang mga aksyon: i-edit, maghanap ng isang pangyayari ng ang substring, at iba pang mga function. Kung kinakailangan, ang linya ay maaaring muling i-convert sa ang bilang ng mga nai-inilarawan sa itaas.

Ang artikulo ay itinuturing na maliit na bahagi lamang ng lahat ng mga function na kaugnay sa mga linya. Bahagi ng undocumented function nagtatrabaho sa mga simbolo, ngunit karamihan ay hindi isinama sa ang materyal dahil sa ang pagtitiyak. Upang masanay sa mga pag-andar ay kinakailangan upang magpatuloy upang basahin ang opisyal na babasahin sa PHP, na nagpapakita ng kasalukuyang impormasyon.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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