Kaj pomenita dve dvopičji v PHP? Dvopičje: kje, kdaj in zakaj morate postaviti dvopičje Kako pišete.

Če ste analizirali kode katerega koli programa, napisanega v PHP, potem ste verjetno naleteli na takšne posebne stvari v kodi. znaki:

-> (pomišljaj in znak večje od)

:: (dvopičje)

Na primer, konstrukcije s temi izrazi so lahko videti takole:

Pozdravljeni::hello_world(); q -> hello_world();

Da bi razumeli, zakaj so te strukture potrebne, si oglejmo najpreprostejši primer. Recimo, da imamo preprost program "Hello world!"

Ustvarimo preprosto datoteko php in vanjo zapišimo naslednjo kodo:

Razred Hello ( funkcija hello_world () ( echo "Hello world"; ) )

Zdaj pomislite, kako lahko izvedete funkcijo hello_world().

Če funkcija hello_world() ne bi bila v razredu Hello, bi jo poklicali zelo preprosto:

Pozdravljen, svet();

Posledično bi se na zaslonu pojavile besede "Hello world". Najverjetneje, če ste poskušali težavo rešiti na ta način, se je na zaslonu pojavila napaka:

Usodna napaka: klic nedefinirane funkcije hello_world() v …/test.php na spletu…

Vse je pravilno, saj je funkcija v razredu, potem morate računalniku povedati, da jo je treba iskati v razredu Hello. Če tega ne storite, potem nič ne bo delovalo.

Kako se lahko takšne informacije posredujejo računalniku?

Tukaj je več možnosti. Oglejmo si vsakega posebej.

Možnost 1. Z ustvarjanjem primerka razreda.

$q = novo Pozdravljeni;

S to vrstico ustvarimo tako imenovano instanco razreda Hello. Po tej operaciji lahko prek te instance prosto dostopamo do funkcije, ki jo potrebujemo, ki je v tem primeru shranjena v spremenljivki $q.

$q -> hello_world();

Konstrukcija “->” postane povezovalni člen med primerkom razreda in funkcijo.

Zdaj vse deluje. Hura! Na zaslonu bi morali videti "Hello World".

Možnost 2. Uporaba konstrukcije z dvojnim dvopičjem::

Ta možnost je še veliko preprostejša. Tukaj vam sploh ni treba ustvariti nobenih primerkov. Samo piševa si.

Pozdravljeni::hello_world();

Lahko preverite, ali se bo funkcija uspešno izvedla.

Upam, da po branju te opombe zdaj razumete, da se »->« in »::« uporabljata za dostop do želene funkcije v ustvarjenem razredu.

Z istimi konstrukti lahko dostopamo do spremenljivk, ki se nahajajo v razredih. Edina razlika je v tem, da vam na koncu ni treba dati oklepaja. Na primer:

Pozdravljen, svet;

S to konstrukcijo dostopamo do spremenljivke world, ki se nahaja v razredu Hello.

Še posebej pogosto lahko takšne konstrukcije najdemo pri analizi kode različnih sistemov za upravljanje spletnih mest. Oglejte si izvorno kodo sistemov, kot so Joomla, WordPress itd. Zdaj veste, čemu vse to služi.

Več mojih vadnic PHP za začetnike.

Torej, dvopičje je ločilo. Za razliko od pike, klicaja in vprašaja ter elipse nima ločevalne funkcije, torej ne ločuje stavkov v besedilu med seboj. Dvopičje je postavljeno samo znotraj stavka in torej pomeni, da se bo stavek nadaljeval za njim.

Dvopičja lahko najdemo v preprostih in zapletenih stavkih. V preprostem stavku deli in poudarja dele izjave; v zapletenem stavku ima tudi pomensko vlogo: nakazuje pomenska razmerja med deli nezdruženega zapletenega stavka.

Torej, kako pravilno uporabiti dvopičje, ne da bi naredili napake in ga ne zamenjali z drugimi? Oglejmo si glavne primere.

Dvopičje v preprostem stavku

Pravilo 1. Dvopičje v stavku s homogenimi člani

Če posplošujoča beseda stoji pred homogenimi členi, je za njo potrebno dvopičje, na primer: Ležal je sneg povsod: na strehah hiš, na ograjah, na zelenicah, na avtomobilih.

V tem stavku beseda povsod posplošuje številne podobne okoliščine. Posploševalna beseda se nahaja pred homogenimi členi, zato je za njo dvopičje.

Pravilo 2. Dvopičje v stavkih s kvalificirajočimi besedami

Ko so v stavku uporabljene posplošujoče besede, se lahko uporabijo pojasnjevalne besede: kot na primer tako, namreč pred vejico in za njo dvopičje. Na primer: Ležal je sneg povsod, namreč: na strehah hiš, na ograjah, na zelenicah, na avtomobilih.

V tem stavku skupaj s posploševalno besedo povsod konstrukcija, ki pojasnjuje, da je bila uporabljena "namreč" , sledi niz homogenih izrazov, zato mu sledi dvopičje.

Pravilo 3. Dvopičje v konstrukcijah z neposrednim govorom

Če besedam avtorja sledi premi govor, se pred njim postavi dvopičje, sam premi govor pa je v narekovajih, prva beseda preme govora pa je napisana z veliko začetnico: Učitelj je rekel: "Pozdravljeni, otroci!" Tudi če neposredni govor prekine avtorjeve besede v besedilu, se pred njim postavi dvopičje, na primer: Učiteljica je z besedami: »Pozdravljeni, otroci!« vstopila v razred. Po neposrednem govoru morate postaviti vejico.

Dvopičje v zapleteni povedi

Pravilo 4. Dvopičje se lahko postavi med dele neenotnega zapletenega stavka (BSP) v naslednjih primerih.

  • Drugi del BSP pojasnjuje kar je bilo povedano v prvem (med deli stavka lahko vstavite " namreč"), na primer: Med ljudmi obstaja tak znak: lastovke letajo nizko, ko dežuje; Katya piše zelo kompetentno: nikoli ne dela napak v besedah ​​in pravilno postavlja ločila. V teh neenotnih zapletenih stavkih drugi del pojasnjuje, o čem se razpravlja v prvem. Med deli stavkov lahko vstavite » namreč": Med ljudmi obstaja takšno znamenje (in sicer): lastovke letijo nizko nad vodo proti dežju. Zato je v navedenih povedih dvopičje.

  • Drugi del BSP razkriva razlog kaj je bilo obravnavano v prvem (med dele stavka lahko vstavite veznike: ker, ker), na primer: Katya piše zelo kompetentno: veliko bere, se uči poezijo na pamet, trenira svoj spomin; Kmalu bo dež: lastovke letajo nizko nad vodo. V teh BSP drugi del utemeljuje in nakazuje razlog za tisto, kar je bilo povedano v prvem. Med deli lahko vstavite veznike: ker, ker. Kmalu bo deževalo (Ker): lastovke letajo nizko nad vodo. Zato se v takih stavkih uporablja dvopičje.

  • Drugi del BSP dopolnjuje, razkriva kar je bilo povedano v prvem (takšni stavki so sinonimi za zapletene povedi s pojasnjevalnim členom, zato se med deli BSP lahko vstavi veznik. Kaj). Na primer: Katja ve: branje knjig ni le zanimivo, ampak tudi zelo koristno za učenje; Ljudje pravijo: lastovke letajo nizko nad vodo, ko dežuje. Podatki BSP v drugem delu razkrivajo pomen tega, kar je obravnavano v prvem. Če so deli takega stavka povezani z veznikom Kaj, potem dobite zapleten stavek s pojasnjevalnim členom: Ljudje pravijo (Kaj,): lastovke letijo nizko nad vodo proti dežju. Pred tovrstnimi stavki je dvopičje.

  • V prvem delu stavka so glagoli izpuščeni: in videl, slišal in občutil, na primer: Dvignil sem glavo: skozi oblake se je prebijal sončni žarek, ki je razsvetljeval jaso s svetlo svetlobo; Obrnil se je: zelo blizu se je slišal odmev naglih korakov. Ti stavki so sinonimi tudi zapletenih podrednih stavkov s pojasnjevalnimi stavki v prvem delu, glagoli, kot so: in videl in slišal, Med deli lahko vstavite veznik Kaj. Dvignil sem glavo (in videl to): sončni žarek se je prebil skozi oblake in osvetlil jaso s svetlo svetlobo.


Dvopičje proti pomišljaju

Glavna težava pri uporabi dvopičja je, da je včasih to ločilo enostavno zamenjati z drugim - pomišljajem. V zadnjem času se ti znaki pogosto uporabljajo vzporedno, to pomeni, da se lahko v istih primerih uporabita tako pomišljaj kot dvopičje. Na primer: In sodniki so sklenili: če bo deževalo, bo tekmovanje odpovedano; Opazil sem prvi kamen in se odločil, da je tukaj zaklad, zato sem začel brskati naokoli(Tendryakov), Seveda onspremenjeno(: –) zgrbljen, siv, z gubamiv kotičkih ust; prihajam noter(: ) vse je tiho; Ne izgovarjaj teh besed pred njim.(: ) lahko užaljen; Vse je zanimalo samo eno vprašanje(: ) kako čim hitreje priti iz te situacije; Pomenilo je eno(: ) treba raziti.

Takšne možnosti se štejejo za enakovredne; Vendar ne smemo pozabiti, da pomišljaj poleg sintaktičnih funkcij opravlja tudi čustvene in ekspresivne, to pomeni, da označuje čustvenost izjave in poudarja njeno ekspresivnost. Če torej stavek nima takšnih pomenov in je nevtralen, se morate izogibati uporabi pomišljaja in postaviti dvopičje, pri čemer upoštevajte pravila, o katerih smo razpravljali.

Verjetno ste opazili, kako pogosto pri pouku uporabljam ta dva psevdoelementa. Zakaj so mi všeč? Ker so tako priročni za uporabo, da vam sploh ni treba dodajati dodatnih elementov HTML. Vendar ta članek ne govori o prednostih psevdoelementov.

Ta članek je namenjen temu, da enkrat za vselej razjasnimo vso zmedo glede sintakse psevdoelementov.

Psevdo-kaj?

Psevdoelementi se tako imenujejo, ker niso pravi elementi HTML. Na primer, HTML nima oznak pred in za, toda v CSS lahko stilizirate elemente :before in :after.

Eno ali dve dvopičji?

Med :before in ::before ali med :after in ::after ni razlike. Sintaksa dvojnega dvopičja je specifična za CSS3.

Na http://www.w3.org/TR/css3-selectors/#pseudo-elements je ta odstavek:

Ta simbol (::) je uveden za razlikovanje psevdo-razredov od psevdo-elementov. Zaradi združljivosti z obstoječimi slogovnimi listami je mogoče psevdoelemente v CSS 1 in 2 določiti tudi z enim dvopičjem (natančneje :first-line, :first-letter, :before in :after).

Naj povzamemo

IE 7 in starejši ne podpirajo navedenih psevdoelementov. Toda IE 8 ga podpira in to je dober (in edini) razlog za uporabo sintakse z enim dvopičjem.

Pomembno!

Ne pozabite, da je vsa ta govorica o enem ali dveh dvopičjih samo o psevdoelementih, ne o psevdorazredih.

kako pišete

V komentarjih napišite, katero sintakso uporabljate in iz katerih razlogov.

Poleg odgovorov glede uporabe dveh dvopičji v PHP kot "operatorja za razreševanje obsega":

Poleg tega se uporablja dvojno dvopičje:

    Če želite pretvoriti nekvalificirano, kvalificirano ali vzdevek ime razreda v njegovo popolnoma kvalificirano obliko in

    Za klic metode razreda __callStatic.

Za pretvorbo imena razreda v njegovo popolnoma kvalificirano obliko z dodajanjem "::razred"

Dve dvopičji, ki jima sledi ključna beseda "razred" za imenom razreda, zagotavljata popolnoma kvalificirano ime tega razreda kot niz. To pomeni, da se "ClassName::class" pretvori v polno ime "ClassName". Glej (A) Priročnik: Razredi in objekti: Osnove, (B) Priročnik: Razredi in objekti: Konstante razredov in (C) Priročnik: Referenca jezika: Konstante

Sintaksa "::class" je uporabna v imenskem prostoru za pridobitev popolnoma kvalificiranega imena razreda iz njegove nekvalificirane ali kvalificirane oblike ali iz vzdevka njegovega imena.

Zdi se, da sintaksa "::class" deluje za razreševanje imen vmesnikov in imen razredov, čeprav se zdi, da to ni dokumentirano v zgoraj povezanih virih.

Znotraj razreda sintaksa deluje tudi s "self::class", kot je omenjeno v "::class" RFC, ki je povezan zgoraj.

Nekaj ​​primerov:

fullName(), PHP_EOL; // izhodi: MyNamespace\TheirClass

Za klic "__callStatic"

Dve dvopičji se lahko uporabita za "klic" imena statične metode, ki je razred ni deklariral. To pokliče metodo razreda "__callStatic", če jo je deklarirala. Metoda __callStatic lahko nato "dinamično" izbere, kako obravnavati klic. V PHP se to imenuje "preobremenitev" z uporabo "čarobne metode" __callStatic.

handleOrder($argumentov); ) vrni "Žal mi je, ne moremo vam pomagati z " . lcfirst($item) . "."; ) ) imenski prostor Naše podjetje\Specialisti; class Car ( javna funkcija handleOrder($arguments) ( return "Ali vam lahko pomagam z $arguments car?"; ) ) class Truck ( javna funkcija handleOrder($arguments) ( return "Ali vam lahko pomagam s tovornjakom $arguments?) "; ) ) uporabite OurCompany\Orders\Intake; echo Intake::orderCar("rdeča"), PHP_EOL; // izhodi: Vam lahko pomagam z rdečim avtomobilom? echo Intake::orderTruck("prevzem"), PHP_EOL; // izhodi: Vam lahko pomagam s tovornjakom? echo Intake::orderShoes("suede"), PHP_EOL; // izhodi: žal mi je, ne moremo vam pomagati s čevlji.

Najnovejši materiali v razdelku:

Angleščina z maternim govorcem preko Skypa Ure angleščine preko Skypa z maternim govorcem
Angleščina z maternim govorcem preko Skypa Ure angleščine preko Skypa z maternim govorcem

Morda ste že slišali za odlično stran za izmenjavo jezikov, imenovano SharedTalk. Žal se je zaprl, a je njegov ustvarjalec projekt oživil v...

Raziskovanje
Raziskovalno delo "Kristali" Kaj imenujemo kristal

KRISTALI IN KRISTALOGRAFIJA Kristal (iz grščine krystallos - »prozoren led«) se je prvotno imenoval prozoren kremen (kaminski kristal),...

"Morski" idiomi v angleščini

"Ustavite svoje konje!" - redek primer, ko je angleški idiom preveden v ruščino besedo za besedo. Angleški idiomi so zanimivi...