Mga computerProgramming

PHP Practice: string paghahambing

PHP ay nakatuon sa mahusay na impormasyon handling. Ang syntax ng wika ay kinakatawan fully functional hanay ng paghahambing function, string processing, paghahambing operator.

Ang anumang algorithm - isang pagkakasunod-sunod ng mga pagpipilian at mga pagkilos. Ngunit bago ka gumawa ng isang pagpipilian, kailangan mo ng isang bagay upang ihambing ito sa isang bagay. Line - ang pinaka-maluwang, mabisa at praktikal na algorithm control mekanismo. Line - isang variant ng data na pagtatanghal. Isang data - ito ay ang pangunahing paksa ng "pag-aalaga" ng anumang algorithm.

Ordinaryong logic "na paghahambing-action"

Sa pangkalahatan, dynamic na-type dila ang ginagawa walang pagkakaiba sa mga data, tulad ng PHP paghahambing linya at ang bilang ay hindi magkano ang naiiba. Number - ito rin ay isang string, kapag ito ay naglalaman lamang ng mga numero, point at doon ay hindi isang solong character na ay hindi na ginagamit upang kumatawan sa mga numero sa anumang anyo (notation sa matematika).

Kung kontenkatsii number awtomatikong merges sa linya, walang mga katanungan nagtanong at walang mga nakatagong mga error, kahit na GetType () function na ay nagbibigay ng 'integer' o 'double'.

Gayunpaman, mayroong isang pagkakaiba sa pagitan ng paggamit is_int () at is_numeric (). Ang unang nagbibigay sa katotohanan, lamang kapag ang mga parameter ay isang integer, pangalawa, kapag ang anumang bilang o numerong string (variable type ay 'string', ngunit comprises ang lahat ng ibinigay mathematical notation).

Ito ay isang simpleng halimbawa - isang magandang halimbawa ng kung paano ang isang PHP string paghahambing operator ( '==' '===' ... '='!) Maaari ipakilala ang maraming mga sorpresa. Ang mga variable ay maaaring baguhin ang kanilang mga uri, ang mga ito ay hindi palaging numero, ngunit halos palaging sila ay maaaring humantong sa mga linya. Sa isang matinding kaso - ito ay isang walang laman na string.

Base sa itaas, ang isang PHP string paghahambing function na ay pinaka-tanyag. Ano ang mga eksaktong upang pumili, upang magpasya nag-develop. Napakaraming ng mga pagpipilian na magagamit hanggang sa regular na expression.

Ang mga hangganan ng mga magagamit na functional

PHP-paghahambing ng dalawang mga hanay ay mabuti "gawin" function strpos () - ang cheapest, ng saksing tapat at praktikal na pagpipilian. Kung ang resulta ng number function, pagkatapos ay malinaw na ang isa string ay katumbas ng isa o isang bahagi sa isa pa.

Radikal na tapat, kundi ganap na ang tamang diskarte - ang paggamit ng mga regular na expression.

Kung ang pag-andar $ cResult = scCheckFileName ($ CSTR) ay nagbibigay sa 'tunay', pagkatapos ay ang linya ay ang pangalan ng file vordovsky. Siya ay may isa lamang opsyon ng pagpapalawak '.docx' at walang mga character sa pangalan: lamang ng mga titik, numero at mga character '_', '-'.

Ang function na maaaring madaling-convert sa iba pang mga uri ng mga file: $ cPtr = '/^([a-zA-Z...0-9\-\_]{4,239})\.(html|js|css|png|jpg | docx | txt) {1} $ / u '. Variant na ito ay umaabot ang hanay scan line maida-download (hal, PHP string paghahambing ay inilapat "upang mag-upload ng mga file sa isang server, na walang pagkakataon ng pag-input error") para sa html, js, css, ...

Gamit ang strpos () at preg_match () - extremes. Sila ay hindi direktang may kinalaman sa isyu ng panahon ng paghahambing. Subalit ang tanong ng algorithm - ay isang bagay ng paggamit ng isang kumbinasyon ng estilo, ang paggamit ng lahat ng mga pagkakataon upang makamit ang isang maaasahang at tamang resulta.

Functional PHP: string paghahambing

Arsenal wika kung ihahambing string - isang dalisay, hindi lamang ang paghahambing function, ngunit din ng isang kumbinasyon ng isang paghahanap o kapalit ng direkta. Hindi laging kumilos dapat nag-tutugma sa ang paghahambing, dahil ang huli ay hindi kinakailangang humantong sa isang pagbabago sa anumang hilera. Kadalasan kailangan mong pumili ng isa o ang iba pang mga sangay ng algorithm.

Normal variant PHP: gumaganap string paghahambing function int strcmp (s1, s2).

Ang resulta ng mga pag-andar:

  • 0 - linya ay pantay-pantay;
  • -1 - ang unang string ay mas mababa kaysa sa pangalawa;
  • 1 - ang unang higit sa pangalawang hilera.

Sa pagsasanay, ito ay nangangahulugan na bahaging iyon ng unang hilera sa pangalawa, mula sa kung saan PHP function (paghahambing hilera) nagpapasya. Ang isang mas limitadong bersyon ng strpos (), dahil sa huli kaso ito ay posible na malaman ang posisyon ng entry.

strcmp () function na - sensitive. Kung nais mong ihambing ang mga string-insensitive, PHP ay nag-aalok nito strcasecmp (). Ang syntax ay katulad.

Sa pagsasanay ay madalas na kinakailangan upang gumana hindi sa ang buong linya, ngunit lamang ng bahagi ng mga ito. Para sa hanay ng mga function na PHP (string paghahambing) kasama strncmp (s1, s2, N). Ang ikatlong parameter na tumutukoy gumanap sa mga paghahambing lamang N-bytes. Ang resulta ay katulad strcmp ().

Ang mga array, string at paghahambing

Ang mga ito ay halos palaging kinakatawan ng mga string. Kung isaalang-alang namin ang mga array, mga bagay, o mga istraktura ng data, ito lamang ay iba't ibang mga variant ng mga kumbinasyon ng isang simpleng istruktura string.

String array at mga hilera ay maaaring maibigay sa isang komplementaryong paraan. Pagbabago ng array sa isang string function na pumutok sa loob (array, simbolo), halimbawa: $ margins1 = pumutok sa loob ( ',', $ style-> getInnerMargin ()); ... ang algorithm / user ...; $ Margins2 = pumutok sa loob ( ',', $ style-> getInnerMargin ()) ay nagbibigay-daan sa iyo upang pagsamahin ang lahat ng posisyon bagay sa string posisyon.

Pagkatapos ay maaari mong isagawa ang PHP string paghahambing, at sa isang pagkakataon: $ check = strcmp ($ margins1, $ margins2) at tiyaking ang algorithm o ang manggagamit na ang isang bagay ay nagbago (o hindi). Kung nagsagawa ka ng isang paghahambing sa karaniwang paraan, magkakaroon ka upang maipagsama-sama ng mga elemento array. Ito ay tumatagal ng mas mahaba at mas komplikado.

Mga Bagay at linya

Dagdag pang mga kamangha-manghang paggamit ng PHP (string paghahambing) ay maaring ipatupad sa pamamagitan ng object-oriented mga ideya.

Ang mga modernong ideya ng mga pasilidad na nagpapahiwatig na sila ay may mga katangian at mga pamamaraan. Ang dating ay karaniwang kinakatawan ng mga numero, string, array, at iba pang mga bagay. Ang huli ay madalas na isama ang pag-record ng mga diskarte (ilagay) sa pagbawi line at mula sa linya (makakuha).

Hindi tulad ng arrays, ang object ang trabaho sa kanilang sariling mga katangian at nakikipag-ugnayan sa iba pang mga bagay. Bagay "karampatang mga" kung saan pagmamay-ari nito may tunay na kahalagahan para sa mga algorithm ng programa bilang isang buo.

Sandali na ito ay nagbibigay ng isang batayan at pagkakataon upang i-record kapag nagrerekord ng isang string lamang ng mga kinakailangang impormasyon, at sa pagbawi ng linya upang ibalik ang lahat ng mga nagtatrabaho properties sa nais na estado. Kadalasan, sa anumang object mayroong sapat na impormasyon at pagtatrabaho (oras). Ang pagpapatupad ng mga ideya na ito ay nagbibigay-daan sa iyo upang i-save ang hindi lamang memory, disk space, ang database record, ngunit din ginagawang posible upang ihambing ang mga linya mas simple at mas tumpak na paraan.

Syntax at semantika

PHP ay pagbuo ng dynamic na, at ang pag-andar ng parehong sa mga tuntunin ng paghahambing ng mga string at patuloy na pinabuting sa mga tuntunin ng kanilang paggamot. Gayunpaman, walang humahadlang sa isang developer upang ilipat ang sentro ng grabidad sa lugar ng semantics.

Walang pagsala, ang pag-andar ay mabuti, ngunit ang paggamit nito ay maaaring mailipat sa ibig sabihin ng mga code sa mga bagay. Kapag ang algorithm ay ipinakita bilang isang sistema ng pakikipag-ugnayan sa pagitan ng mga bagay, ito asta marami mas mahusay kaysa sa mga paghahambing pagkakasunod-sunod at mga pagkilos sa direct sequence, isang klasikal na istilo.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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