ev - katlar
Bir cümlede iki nokta. PHP'de iki kolon ne anlama geliyor? Basit bir cümlede kolon

Bu nedenle, iki nokta üst üste bir noktalama ayırıcısıdır. Nokta, ünlem ve soru işaretleri ve eksiltinin aksine ayırıcı bir işlevi yoktur, yani metindeki cümleleri birbirinden ayırmaz. İki nokta üst üste yalnızca cümlenin içine yerleştirilir ve bu nedenle ondan sonra ifadenin devam edeceğini gösterir.

İki nokta üst üste basit ve karmaşık cümlelerde bulunabilir. Basit bir cümlede, ifadenin parçalarını ayırır ve vurgular; karmaşık bir cümlede, aynı zamanda anlamsal bir rol oynar: ilişkilendirilmemiş karmaşık bir cümlenin parçaları arasındaki anlamsal ilişkileri gösterir.

Peki, hata yapmadan ve başkalarıyla karıştırmadan iki nokta üst üste kullanmanın doğru yolu nedir? Ana davalara bakalım.

Basit bir cümlede kolon

Kural 1. Homojen üyelerle bir cümlede iki nokta üst üste

Genelleme sözcüğü homojen üyelerin önündeyse, ondan sonra iki nokta üst üste işareti gerekir, örneğin: kar örtüsü her yerde: evlerin çatılarında, çitlerin üzerinde, çimenlerin üzerinde, arabaların üzerinde.

Bu cümlede, kelime her yerde bir dizi benzer durumu özetler. Genelleme kelimesi homojen üyelerden önce bulunur ve bu nedenle ondan sonra iki nokta üst üste işareti bulunur.

Kural 2. Niteleyici kelimelerle cümlelerde iki nokta üst üste

Bir cümledeki sözcükleri genellerken niteleyici sözcükler kullanılabilir: örneğin, örneğin, olduğu gibi, yani, öncesinde virgül ve ardından iki nokta üst üste gelir. Örneğin: kar örtüsü her yerde, yani: evlerin çatılarında, çitlerde, çimenlerde, arabalarda.

Bu cümlede genelleme sözcüğü ile birlikte her yerde inşaatında bir iyileştirme kullandı "yani" , ardından bir dizi homojen üye gelir, bu nedenle iki nokta üst üste gelir.

Kural 3. Doğrudan konuşma ile yapılarda iki nokta üst üste

Doğrudan konuşma yazarın sözlerini izliyorsa, önüne bir iki nokta üst üste konur ve doğrudan konuşmanın kendisi tırnak içine alınır ve doğrudan konuşmanın ilk kelimesi büyük harfle yazılır: Öğretmen: "Merhaba çocuklar!" dedi. Ayrıca, doğrudan konuşma metindeki yazarın sözlerini bozarsa, önüne bir iki nokta üst üste konur, örneğin: "Merhaba çocuklar!" diyen öğretmen sınıfa girdi. Doğrudan konuşmadan sonra virgül konulmalıdır.

Birleşik cümlede kolon

Kural 4. Aşağıdaki durumlarda birleşik olmayan karmaşık cümlenin (BSP) bölümleri arasına iki nokta üst üste yerleştirilebilir.

  • BSP'nin ikinci bölümü açıklar ilkinde ne söylendi (cümlenin bölümleri arasına ekleyebilirsiniz " yani"), örneğin: İnsanlar arasında böyle bir işaret vardır: kırlangıçlar yağmura doğru alçaktan uçar; Katya çok yetkin yazıyor: kelimelerde asla hata yapmıyor, noktalama işaretlerini doğru yerleştiriyor. Bu birleşik olmayan karmaşık cümlelerde, ikinci bölümde, ilk bölümde neyin tartışıldığına dair bir açıklama yapılır. Cümlelerin bölümleri arasına ekleyebilirsiniz " yani": Halk arasında bir söz vardır. (yani): kırlangıçlar yağmur için suyun üzerinde alçaktan uçar. Bu nedenle yukarıdaki cümlelerde iki nokta üst üste kullanılmıştır.

  • BSP'nin ikinci bölümü nedenini ortaya çıkarır ilkinde söylenenler (cümlenin bölümleri arasına bağlaçlar eklenebilir: Çünkü Çünkü), örneğin: Katya çok yetkin yazıyor: çok okuyor, şiiri ezbere öğreniyor, hafızasını eğitiyor; Yakında yağmur yağacak: kırlangıçlar suyun üzerinde alçaktan uçar. Bu BSP'lerde, ikinci kısım doğrular, ilkinde söylenenlerin nedenini belirtir. Parçalar arasına birleşimler yerleştirilebilir: Çünkü Çünkü. yakında yağmur yağacak (çünkü): kırlangıçlar suyun üzerinde alçaktan uçar. Bu nedenle, bu tür cümlelerde iki nokta üst üste kullanılır.

  • BSP'nin ikinci bölümü tamamlar, ortaya çıkarır ilkinde ne söylendi (bu tür cümleler, açıklayıcı bir madde içeren karmaşık cümlelerle eş anlamlıdır, bu nedenle BSP'nin bölümleri arasına bir birlik eklenebilir ne). Örneğin: Katya biliyor: kitap okumak sadece ilginç değil, aynı zamanda ders çalışmak için de çok faydalı; İnsanlar şöyle der: Kırlangıçlar yağmur için suyun üzerinde alçaktan uçar.İkinci bölümdeki BSP verilerinde ise birinci bölümde anlatılanların anlamı ortaya çıkıyor. Böyle bir cümlenin parçaları bir birlik ile bağlıysa ne, ardından açıklayıcı bir madde içeren karmaşık bir cümle elde edersiniz: insanlar söylüyor (ne,): kırlangıçlar yağmur için suyun üzerinde alçaktan uçar. Bu tür cümlelerde iki nokta üst üste kullanılır.

  • Cümlenin ilk bölümünde fiiller atlanmıştır: ve gördüm ve duydum ve hissettim, örneğin: Başımı kaldırdım: Bulutların arasından bir güneş ışını çıktı, açıklığı parlak bir ışıkla aydınlattı; Arkasını döndü: aceleci ayak seslerinin yankısı çok yakından duyuldu. Bu cümleler aynı zamanda açıklayıcı bir cümle ile karmaşık bir yan tümce ile eş anlamlıdır; ilk bölümde bu tür fiiller atlanmıştır: ve gördüm ve duydum parçalar arasına birleşim yerleştirilebilir ne. başımı kaldırdım (ve bunu gördüm): bir güneş ışını bulutların arasından geçerek açıklığı parlak ışıkla aydınlattı.


Kolon vs tire

İki nokta üst üste kullanmanın ana zorluğu, bazen bu noktalama işaretini bir başkasıyla - bir tire ile karıştırmanın kolay olmasıdır. Son zamanlarda, bu işaretler genellikle paralel olarak kullanılır, yani aynı durumlarda hem kısa çizgi hem de iki nokta üst üste yerleştirilebilir. Örneğin: Ve yargıçlar karar verdi: yağmur yağarsa yarışma iptal edilecek; İlk taşı fark ettim, karar verdim - burada bir hazine var, kurcalamaya başladım(Tendryakov), tabii ki odeğişti(: –) kambur, gri, buruşukağız köşelerinde; geliyorum(: ) her şey sessiz; Bu sözleri onun önünde söyleme(: ) rahatsız olabilir; Herkes tek bir soruyla ilgilendi(: ) durumdan en kısa sürede nasıl çıkılır; Tek bir anlama geliyordu(: ) ayrılmak gerek.

Bu seçenekler eşit kabul edilir, hata yapmaktan korkmadan hem kısa çizgi hem de iki nokta üst üste kullanabilirsiniz. Bununla birlikte, kısa çizgi, sözdizimsel işlevlere ek olarak, duygusal ve anlamlı olanları da gerçekleştirdiği, yani ifadenin duygusallığını gösterdiği, ifadesini vurguladığı unutulmamalıdır. Bu nedenle, cümle bu tür anlamları taşımıyorsa, nötr ise, incelediğimiz kurallara uyarak tire kullanmaktan kaçınmanız ve iki nokta üst üste koymanız gerekir.

Bu iki sözde öğeyi derslerimde ne sıklıkta kullandığımı fark etmiş olabilirsiniz. Neden onları seviyorum? Kullanımları o kadar kolay olduğu için ek HTML öğeleri eklemeniz bile gerekmez. Ancak bu makale, sözde unsurların faydaları ile ilgili değildir.

Bu makale, sözde öğelerin sözdizimi ile ilgili tüm yanlış anlamaları bir kez ve tüm olarak netleştirmeye adanmıştır.

Sözde ne?

Sözde öğeler, gerçek HTML öğeleri olmadıkları için bu şekilde adlandırılır. Örneğin, HTML'de önce ve sonra etiketleri yoktur, ancak CSS'de :before ve :after öğelerine stiller uygulayabilirsiniz.

Bir veya iki kolon?

:before ve::before veya :after ve::after arasında hiçbir fark yoktur. İki kolonlu sözdizimi CSS3'e özeldir.

http://www.w3.org/TR/css3-selectors/#pseudo-elements şu paragrafa sahiptir:

Bu işaret (::), sözde sınıfları sözde öğelerden ayırt etmek için tanıtıldı. Önceden var olan stil sayfalarıyla uyumluluk için, CSS 1 ve 2'deki sözde öğeler de tek bir iki nokta üst üste ile belirtilebilir (özellikle, :ilk satır, :ilk harf, :önce ve :sonra).

Özetleme

IE 7 ve önceki sürümler, listelenen sözde öğeleri desteklemez. Ancak IE 8 yapar ve bu, tek kolonlu sözdizimini kullanmak için iyi (ve tek) bir nedendir.

Önemli!

Lütfen bir veya iki iki nokta üst üste konuşmalarının tümünün sözde sınıflarla değil, yalnızca sözde öğelerle ilgili olduğunu unutmayın.

Nasıl yazarsın?

Hangi sözdizimini ve hangi nedenlerle kullandığınızla ilgili yorumları yazın.

PHP'nin "kapsam çözümleme operatörü" olarak iki iki nokta üst üste kullanmasıyla ilgili yanıtlara ek olarak:

Ek olarak, çift kolon kullanılır:

    Niteliksiz, nitelikli veya takma ad sınıf adını tam nitelikli biçimine dönüştürmek ve

    Bir sınıf yöntemini çağırmak için __callStatic.

"::class" ekleyerek bir sınıf adını tam biçimine dönüştürmek için

Sınıf adından sonra "sınıf" anahtar sözcüğünü takip eden iki iki nokta üst üste, o sınıfın tam nitelikli adını bir dize olarak sağlar. Yani, "SınıfAdı::sınıf", tam nitelikli "SınıfAdı" adına dönüştürülür. Bkz. (A) Kılavuz: Sınıflar ve Nesneler: Temel Bilgiler, (B) Kılavuz: Sınıflar ve Nesneler: Sınıf Sabitleri ve (C) Kılavuz: Dil Referansı: Sabitler

"::class" sözdizimi, bir sınıfın tam nitelikli adını, niteliksiz veya nitelenmiş biçiminden veya adının diğer adından türetmek için bir ad alanında kullanışlıdır.

"::class" sözdizimi, sınıf adlarının yanı sıra arabirim adlarını da çözmek için çalışıyor gibi görünüyor, ancak bu, yukarıda belirtilen kaynaklar tarafından belgelenmemiş gibi görünüyor.

Bir sınıf içinde, sözdizimi ayrıca yukarıdaki "::class" RFC'sinde belirtildiği gibi "self::class" ile çalışır.

Birkaç örnek:

fullName(), PHP_EOL; // çıktılar: MyNamespace\Sınıfım

"__callStatic" aramak için

Sınıfın bildirmediği statik bir yöntem adını "çağırmak" için iki iki nokta üst üste kullanılabilir. Bu, bir tane bildirmişse "__callStatic" sınıf yöntemini çağırır. __callStatic yöntemi daha sonra "dinamik olarak" aramanın nasıl işleneceğini seçebilir. PHP'de buna "sihirli yöntem" __callStatic ile "aşırı yükleme" denir.

handleOrder($argümanlar); ) "Üzgünüm, size yardımcı olamayız" ile geri dönün. lcfirst($item) . "."; ) ) ad alanı BizimŞirketimiz\Uzmanlarımız; class Car ( public function handleOrder($arguments) ( return "Size bir $arguments arabasıyla yardımcı olabilir miyim?"; ) ) class Truck ( public function handleOrder($arguments) ( return "Size bir $arguments kamyonuyla yardımcı olabilir miyim? "; ) ) OurCompany\Orders\Intake kullanın; echo Intake::orderCar("kırmızı"), PHP_EOL; // çıktılar: Size kırmızı bir araba konusunda yardım edebilir miyim? echo Intake::orderTruck("alma"), PHP_EOL; // çıktılar: Bir kamyonet konusunda size yardımcı olabilir miyim? echo Intake::orderShoes("süet"), PHP_EOL; // çıktılar: "Üzgünüm, size ayakkabı konusunda yardımcı olamayız".

Eğer php dilinde yazılmış herhangi bir programın kodlarını incelediyseniz, kodda bu tür özel kodlara rastlamışsınızdır. semboller:

-> (Tire ve büyüktür işareti)

:: (çift kolon)

Örneğin, bu ifadelere sahip yapılar şöyle görünebilir:

Merhaba::merhaba_dünya(); q -> merhaba_dünya();

Bu yapıların ne işe yaradığını anlamak için en basit örneğe bakalım. Diyelim ki basit bir "Merhaba dünya!" programımız var.

Basit bir php dosyası oluşturalım ve içine aşağıdaki kodu yazalım:

Merhaba Sınıfı ( işlev hello_world () ( echo "Merhaba dünya"; ) )

Şimdi merhaba_world() işlevini nasıl çalıştırabileceğinizi düşünün.

Hello_world() işlevi Hello sınıfında olmasaydı, onu çok basit bir şekilde çağırırdık:

Selam Dünya();

Sonuç olarak, ekranda "Merhaba dünya" yazısını alırdık. Ancak, büyük olasılıkla, sorunu bu şekilde çözmeye çalıştıysanız, ekranda bir hata aldınız:

Önemli hata: On line …/test.php içindeki tanımsız merhaba_world() işlevine çağrı…

Her şey doğru çünkü işlev sınıfta ise, bilgisayara Hello sınıfında aranması gerektiğini söylemeniz gerekir. Bu yapılmazsa, hiçbir şey işe yaramaz.

Bu tür bilgiler bir bilgisayara nasıl iletilebilir?

Burada birkaç seçenek var. Her birine ayrı ayrı bakalım.

1 seçenek. Sınıfın bir örneğini oluşturarak.

$q = yeni Merhaba;

Bu satırla, Hello sınıfının sözde bir örneğini oluşturuyoruz. Bu işlemden sonra, bu durumda $q değişkeninde saklanan bu örnek üzerinden ihtiyacımız olan fonksiyona serbestçe erişebiliriz.

$q -> merhaba_world();

"->" yapısı, sınıf örneği ile işlev arasındaki bağlantı bağlantısı haline gelir.

Şimdi her şey çalışıyor. Yaşasın! Ekranda "Merhaba dünya" görmelisiniz.

Seçenek 2. Çift kolon yapısını kullanarak:

Bu seçenek çok daha kolay. Burada herhangi bir örnek oluşturmanıza bile gerek yok. Sadece yazıyoruz.

Merhaba::merhaba_dünya();

İşlevin başarıyla tamamlanıp tamamlanmayacağını kontrol edebilirsiniz.

Umarım bu notu okuduktan sonra, oluşturulan sınıfta istenen işleve erişmek için "->" ve "::" ifadelerinin kullanıldığını anlamışsınızdır.

Aynı yapılar yardımıyla sınıflardaki değişkenlere ulaşabiliriz. Tek fark, sonuna parantez koymanıza gerek olmamasıdır. Örneğin:

Selam Dünya;

Bu yapı ile Hello sınıfında yer alan world değişkenine atıfta bulunuyoruz.

Özellikle sık sık, bu tür yapılar, çeşitli site yönetim sistemlerinin kodunu ayrıştırırken bulunabilir. Joomla, WordPress vb. gibi sistemlerin kaynak kodlarına bakın. Şimdi tüm bunların ne için olduğunu biliyorsun.

Yeni başlayanlar için PHP derslerimden daha fazlası.



 


Okumak:



Rüyada Yürümek görmek ne anlama gelir?

Rüyada Yürümek görmek ne anlama gelir?

Bir rüyada ne anlama geliyor - sadece git? Rüya kitabına göre bu, tüm dünyevi kaygılarıyla sıradan yaşamın bir yansımasıdır. Tam olarak anlamak için...

Doğum günü davetiyesi metni kısa, sms

Doğum günü davetiyesi metni kısa, sms

Sauna, ortalama bir Rus için oldukça uygun fiyatlı bir zevkin yanı sıra bir rahatlık ve rahatlama bölgesidir. Bazı insanlar tatil yapar...

Yüksekten düşen çocuk uyu

Yüksekten düşen çocuk uyu

Yüksek bir binadan veya uçurumdan düşerseniz, bu kötü kaderin size tehlikeli bir oyun oynayabileceğine dair sembolik bir uyarıdır. Sen...

Rüyada yüksekten düşen bir çocuk görmek

Rüyada yüksekten düşen bir çocuk görmek

Çocukların düştüğü rüyalar iyiye işaret değildir. Bir çocuğun düştüğünü görmek çoğu zaman engellerin bir sembolü olarak kabul edilir, ...

besleme resmi RSS