Tranquillo
Grafiker™️ Developer✓ Development Yetkilisi·
- Üyelik Tarihi
- 4 Ocak 2023
- Konular
- 53
- Mesajlar
- 107
- MFC Puanı
- 1,630
PHP Ad Alanları
Ad alanları, iki farklı sorunu çözen niteleyicilerdir:- Bir görevi gerçekleştirmek için birlikte çalışan sınıfları gruplayarak daha iyi organizasyona izin verirler.
- Aynı adın birden fazla sınıf için kullanılmasına izin verirler.
Ad Alanı Bildirme
Ad alanları, anahtar kelime kullanılarak bir dosyanın başında bildirilir namespace:Sözdizimi
MEGAForum adında bir ad alanı bildirin:
HTML:
<?php
namespace MegaForum;
?>
Not: namespace PHP dosyasındaki ilk şey bir bildirim olmalıdır. Aşağıdaki kod geçersiz olacaktır:
PHP:
<?php
echo "Merhaba Megaforum";
namespace Megaforum;
...
?>
Bu dosyada bildirilen sabitler, sınıflar ve işlevler MegaForum ad alanına ait olacaktır:
Örnek
MEGAForum ad alanında bir Table sınıfı oluşturun:
HTML:
<?php
namespace MEGAForum;
class Table {
public $title = "";
public $numRows = 0;
public function message() {
echo "<p>Table '{$this->title}' has {$this->numRows} rows.</p>";
}
}
$table = new Table();
$table->title = "Benim megaforum";
$table->numRows = 5;
?>
<!DOCTYPE html>
<html>
<body>
Daha fazla organizasyon için iç içe ad alanlarına sahip olmak mümkündür:
Sözdizimi
Code adlı bir ad alanı içinde MegaForum adlı bir ad alanı bildirin:
PHP:
<?php
namespace Code\MegaForum;
?>
Ad Alanlarını Kullanma
Bir bildirimi izleyen herhangi bir kod namespace ad alanı içinde çalışır, bu nedenle ad alanına ait sınıflar herhangi bir niteleyici olmadan başlatılabilir. Bir ad alanının dışından sınıflara erişmek için, sınıfın kendisine bağlı ad alanına sahip olması gerekir.Örnek
MegaForum ad alanındaki sınıfları kullanın:
PHP:
<?php
$table = new MegaForum\Table()
$row = new MegaForum\Row();
?>
Aynı ad alanından birçok sınıf aynı anda kullanıldığında, namespace anahtar sözcüğü kullanmak daha kolaydır:
Örnek
MegaForum\qualifier'a ihtiyaç duymadan MegaForumad alanındaki sınıfları kullanın:
PHP:
<?php
namespace MegaForum;
$table = new Table();
$row = new Row();
?>
Ad Alanı Takma Adı
Yazmayı kolaylaştırmak için bir ad alanı veya sınıfa bir takma ad vermek yararlı olabilir. Bu, use anahtar kelimeyle yapılır:Örnek
Bir ad alanına bir takma ad verin:
PHP:
<?php
use MegaForum as H;
$table = new H\Table();
?>
Örnek
Bir sınıfa bir takma ad verin:
PHP:
<?php
use MegaForum\Table as T;
$table = new T();
?>