SORU
1 AĞUSTOS 2010, Pazar


Ad nedir?

PHP Ad nedir?

Genel Ad nedir?

Bir örnek ile meslekten olmayan bir cevap iyi olurdu.

CEVAP
2 AĞUSTOS 2010, PAZARTESİ


Namespacing kapsam değişkenleri için yaptığı işlevleri ve sınıfları yok. Adı çarpışmaya neden olmadan aynı programın farklı yerlerinde aynı işlev veya sınıf adına kullanmak için izin verir.

Basit bir dille,bir kişinin soyadı gibi bir ad düşünün. Eğer iki insan adlı " olmazsa olmaz "John" soyadlarını onları ayırt etmek için kullanabilirsiniz.

Senaryo

Bir fonksiyon output() adında kullanan bir uygulama yazma varsayalım. output() işlevi sayfanızda HTML kodunu alır ve kullanıcıya gönderir.

Daha sonra uygulama üzerinde daha büyük ve yeni özellikler eklemek istiyorum. RSS oluşturmak için izin veren bir kütüphane beslemeleri ekleyin. Bu kütüphane de son besleme çıkış fonksiyonu output() adlı kullanır.

output() PHP output() fonksiyon veya RSS kütüphane output() Bu fonksiyonu kullanmak için olup olmadığını biliyor mu? çağırdığınızda Değil.Sürecead kullanıyorsun.

Örnek

Nasıl output() iki işlev çözmek zorunda mıyız? Basit. Kendi output() her fonksiyonu namespace kalmalıyız.

Bu gibi bir şey olacaktır:

namespace MyProject;

function output() {
    # Output HTML page
    echo 'HTML!';
}

namespace RSSLibrary;

function output(){
    # Output RSS feed
    echo 'RSS!';
}

Farklı işlevleri kullanmak istediğimiz zaman kullanalım:

\MyProject\output();
\RSSLibrary\output();

Ya ad birinde olduğumuzu ilan edebiliriz ve o zaman sadece o ad output() çağrı:

namespace MyProject;

output(); # Output HTML page
\RSSLibrary\output();

Hiçbir Ad?

Eğer (potansiyel olarak) çok fazla kod her zaman değiştirmek zorundayız ad yoktu eğer bir kütüphane ekledik, ya da sıkıcı önekleri ile fonksiyon isimlerimizi benzersiz yapmak için geldi. Ad ile, kendi projeleri ile üçüncü taraf kod karıştırma adlandırma çarpışmalar baş ağrısı önleyebilirsiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Blendtec

    Blendtec

    30 EKİM 2006
  • kev5124

    kev5124

    9 Kasım 2008
  • PCDIY

    PCDIY

    16 AĞUSTOS 2013