Php define Sabit Kullanımı

{{ page.title }}

PHP define (sabit)

PHP’de define komutunu sabitler tanımlamak için kullanırız. Sabitler bir kez tanımlanır ve sabitleri web sitemizin çağırdığımız her kısmında kullanabiliriz. Sabitler define komutu ile tanımlanırlar. Define komutu 3 parametre alır ilk parametresi her yerde kullanacağımız sabitimizin adı, ikinci parametresi ise sabitimizin değeri ve üçünü parametresinde sabitimizi çağırırken büyük küçük harf dikkat edilsin mi şeklindedir.

İlk 2 parametre zorunlu 3. Parametre isteğe bağlıdır default hali false’dir.

Bir örnek ile birkaç sabit tanımlayalım.

PHP define Oluşturma

<?php
define('DB_HOST','localhost');
define('DB_USERNAME','kullanıcı');
define('DB_PASSWORD','şifre');
define('DB_NAME','veritabanı');
?>

Yukarıda veri tabanı bilgilerini oluşturmuş olduğumuz 4 sabit de tutuyoruz. Veri Tabanı bağlantısı oluştururken DB_HOST, DB_USERNAME gibi sabit adlarını çağırarak veri tabanı bağlantımızı oluşturmuş oluyoruz.

PHP define Nerede Kullanılır?

define komutu sabit bilgilerde veya dil gibi sistemlerde kullanılabilir. Biraz daha detaya girmek gerekirse Yaptığımız sistemin versiyon numarası, Veritabanı bilgileri, yaptığımız sistemin adını, birden fazla dil olması gereken sistemlerde kullanabiliriz.

PHP constant Nasıl Kullanılır ve Nedir?

Constant komutu tek parametre tanımlamış olduğumuz sabitin adını yazmamış yeterli. Ayrıca bir değişken içindeki değeri de sabit bulmak için kullanabiliriz.

<?php
define('MAX_BOYUT','5000');
$sabit = 'MAX_BOYUT';
echo constant($sabit);
?>

Yukarıda constant kullanarak değişken içinde yazan string verinin bir sabit değerini yazdırmış olduk.

PHP defined Kullanımı ?

Bir sabitin tanımlanıp tanımlanmadığını defined komutu ile öğrenebiliriz.1 Parametre bu parametrede string olarak kontrol edeceğimiz sabitin adıdır. Geriye dönen değer tanımlanmış ise true tanımlanmamış ise false’dir.

<?php
echo defined('ANASAYFA');
?>

PHP define Dil Sistemi Nasıl Yapılır ?

Dil sistemini yapmak çok basittir. Öncelikle mantığı anlarsak gerisini bizim kodlarımıza kalmış demektir. Dil sistemindeki mantık şudur. define ile sabitlerimizi tanımlarız. Daha sonra tr.php olarak kaydettiğimiz farz ederiz ve ardından tr.php dosyasını kopyalayarak en.php olarak yeni bir tane oluştururuz. En.php dosyasında ise sabit adlarına dokunmadan sadece adlıkları değerleri İngilizce olarak değiştiririz. Ardından php tarafında yine kullanıcı hangi dili seçmiş ise İngilizce ise en.php, Türkçe ise tr.php dosyasını sayfamıza çağırarak istediğimiz dil dosyası yapısını oluşturmuş oluruz.

tr.php dosyası

<?php
define('ANASAYFA','Anasayfa');
define('KAYDET','Kaydet');
define('MENU','Menü');
define('SAYFA_1','Sayfa 1');
define('SAYFA_2','Sayfa 2');
define('SAYFA_3','Sayfa 3');
?>

en.php dosyası

<?php
define('ANASAYFA','Home Page');
define('KAYDET','Save');
define('MENU','Menu');
define('SAYFA_1','Page1');
define('SAYFA_2',' Page 2');
define('SAYFA_3',' Page 3');
?>

2 örnekte sadece sabitlerin aldıkları değerleri değiştirdik ve dil sistemimizi tamamlamak için sadece kullanıcı hangi dili seçtiyse o dil dosyasını çağırmak kaldı.

BOT Benson Topluluk kurucusu ve bir yazılımcı.