DatoriProgrammēšana

PHP prakse: string salīdzinājums

PHP ir vērsta uz labas informācijas apstrādi. No valodas sintakse ir pārstāvēta pilnībā funkcionāla kopumu salīdzināšanas funkciju, stīgu apstrāde, salīdzināšanas operatoru.

Jebkurš algoritms - secība izvēli un rīcību. Bet pirms jūs veicat izvēli, jums ir nepieciešams kaut ko, lai salīdzinātu to ar kaut ko. Line - visvairāk ietilpīgs, efektīvu un praktisku algoritmu kontroles mehānisms. Line - variants datu noformējumu. Datu - tas ir galvenais temats "aprūpe" jebkuru algoritmu.

Parastā loģika "salīdzinājums-action"

Kopumā dinamisks ierakstot mēle nav nekādas atšķirības datos, piemēram, PHP salīdzinājumu līniju un to skaits nav daudz atšķiras. Numurs - tas ir arī virkne, ja tas satur tikai ciparus, punkts un nav vienai rakstzīmei, netiek izmantota, lai pārstāvētu numuru jebkurā formā (matemātiskā notācija).

Ja kontenkatsii numurs automātiski saplūst ar līniju, no uzdotajiem jautājumiem un nav slēptās kļūdas, pat ja gettype () funkcija dod "skaitli" vai "dubulto".

Tomēr pastāv atšķirība starp izmantojot is_int () un is_numeric (). Pirmajā sniedz patiesību, tikai tad, ja parametrs ir vesels skaitlis, otrkārt, ja kāds skaitlis vai skaitļu virkne (mainīgais veids ir "string", bet aptver visu sniegto matemātisko pierakstu).

Tas ir vienkāršs piemērs - labs piemērs, kā PHP stīgu salīdzināšanas operatori ( "== '' === '...' = '!) Var radīt daudz pārsteigumu. Mainīgie var mainīt savu veidu, tie ne vienmēr ir skaitļi, bet gandrīz vienmēr tie var novest pie līnijas. In galējā gadījumā - tā būs tukša virkne.

Pamatojoties uz iepriekš minēto, PHP string salīdzinājums funkcija ir vispopulārākais. Kas tieši izvēlēties, lai izlemtu izstrādātājs. Daudz pieejamās līdz regulārās izteiksmes iespējas.

Robežas pieejamā funkcionālā

PHP-salīdzinājums divām rindām ir labs "do" funkcija strpos () - lētākais, uzticīgais un praktisks risinājums. Ja to rezultātā funkciju skaitu, tad, protams, viena virkne ir vienāds ar citu vai no vienas puses uz otru.

Radikāli pretēji, bet arī absolūti pareizā pieeja - izmantot regulārās izteiksmes.

Ja funkcija $ cResult = scCheckFileName ($ cStr) dod "taisnība", tad līnija ir nosaukums failu vordovsky. Viņš ir tikai viena iespēja paplašināšanās ".docx" un nav rakstzīmes nosaukumu: tikai burtus, ciparus un simbolus "_", "-".

Šo funkciju var viegli pārvērst par citu veidu failus: $ cPtr = '/^([a-zA-Z...0-9\-\_]{4,239})\.(html|js|css|png|jpg | docx | txt) {1} $ / u '. Šis variants paplašina diapazona skenēšanas līnijas lejupielādējama (piemēram, PHP string salīdzinājums piemērots ", lai augšupielādēt failus uz serveri, bez iespējas ievades kļūdas") attiecībā uz html, js, css, ...

Izmantojot strpos () un preg_match () - galējībām. Tie nav tieši saistīts ar jautājumu par salīdzinājuma periodā. Bet jautājums par algoritms - ir jautājums, izmantojot kombināciju stila, izmantot visas iespējas, lai panāktu drošu un pareizu rezultātu.

Funkcionālā PHP: string salīdzinājums

Arsenal valoda salīdzinot stīgas - tīrs, ne tikai salīdzinājums funkciju, bet arī meklēšanas vai aizvietotāju tieši kombinācija. Ne vienmēr rīkojas jāsakrīt ar salīdzinājumu, jo tā ne vienmēr noved pie izmaiņām jebkurā rindā. Bieži vien jums ir izvēlēties vienu vai otru filiāli algoritmu.

Normāls variants PHP: veic stīgu salīdzināšanas funkcija int strcmp (s1, s2).

Rezultāts ir funkcijas:

  • 0 - līnija ir vienādi;
  • -1 - pirmais virkne ir mazāks nekā otrā;
  • 1 - pirmais vairāk nekā otrajā rindā.

Praksē tas nozīmē, ka daļa no pirmās rindas uz otro, no kuras PHP funkcija (salīdzināšanas rindas) nolems. Vairāk ierobežota versija strpos (), jo pēdējā gadījumā tas ir iespējams uzzināt stāvokli ieraksta.

strcmp () funkcija - jūtīgs. Ja vēlaties salīdzināt string nejūtīga, PHP piedāvā savu strcasecmp (). Sintakse ir līdzīga.

Praksē bieži ir jāstrādā nevis ar visu līniju, bet tikai daļa no tā. Par šo funkciju kopumu PHP (string salīdzinājums) iekļauti strncmp (s1, s2, N). Trešais parametrs veiktu salīdzinājumu tikai N-bytes. Rezultāts ir līdzīgs strcmp ().

Bloki, stīgas un salīdzināt

Tie ir gandrīz vienmēr pārstāv stīgas. Ja mēs uzskatām, bloki, objektus, vai datu struktūras, tas ir tikai dažādus variantus kombinācijām vienkāršu string struktūrām.

Stīgu masīvi un rindas var nodrošināt papildinošā veidā. Transformācija masīva vērā virkni funkciju eksplodēt (masīvs, simbols), piemēram: $ margins1 = eksplodēt ( '', $ style-> getInnerMargin ()); ... algoritms / lietotājs ...; $ Margins2 = eksplodēt ( '', $ style-> getInnerMargin ()) ļauj apvienot visus objekta pozīciju stīgu stāvoklī.

Pēc tam jūs varat veikt PHP stīgu salīdzināšanas, un laikā: $ pārbaude = strcmp ($ margins1, $ margins2) un pārliecinieties, algoritms vai lietotājs, ka kaut kas ir mainījies (vai nav). Ja jūs veikt salīdzinājumu parastajā veidā, jums nāksies kārtot masīva elementiem. Tas aizņem ilgāku laiku un ir daudz sarežģītāk.

Objekti un līnijas

Vēl vairāk iespaidīgs izmantošana PHP (string salīdzinājumus) var īstenot, izmantojot objektorientēto idejām.

Modernā ideja no iespējām, liek domāt, ka tie ir īpašības un metodes. Bijusī parasti pārstāv numurus, virknes, masīvi, un citiem objektiem. Pēdējais bieži ietver ierakstīšanas metodes (likt), jo atjaunošanas līnijas un no līnijas (get).

Atšķirībā no masīviem, objekts dara darbu ar savām īpašībām un mijiedarbojas ar citiem objektiem. Objekts "kompetentas", kurā tās īpašības ir reālās vērtības algoritma programmas kopumā.

Tas brīdis nodrošina pamatu un iespēju ierakstīt, ierakstot virkne, tikai nepieciešamo informāciju, un no līnijas atjaunošanai, lai atjaunotu visus darba rekvizītus vēlamajā stāvoklī. Parasti, jebkurā objektā ir būtiska informācija un darba (laiks). Šīs idejas īstenošana ļauj ietaupīt ne tikai atmiņas, diska vietas, datu bāzes ierakstu, bet arī ļauj salīdzināt līnijas vienkāršākas un precīzākas līdzekļus.

Sintakse un semantika

PHP attīstās dinamiski, un tās funkcionalitāte gan salīdzinot virknes un pastāvīgi uzlabota, ņemot vērā to ārstēšanu. Tomēr nekas neliedz izstrādātājs pārvietot smaguma centru jomā semantiku.

Neapšaubāmi, funkcionalitāte ir labs, bet tā izmantošana var tikt nodota izpratnē kodu objektiem. Kad algoritms tiek pasniegts kā sistēmu mijiedarbību starp objektiem, tas izskatās daudz labāk nekā sekvences un darbību tiešā secībā, klasiskā stilā.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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