PHP define - const (Sabitler)

php scriptlerinde oluşturulan bir değişkenin sabit kalmasını isterseniz define() fonksiyonunu veya const deyimini sunar. Sabitler de değişkenler gibi değer depolamaya yararlar. Ancak değişkenler gibi değerleri değiştirilemez. Sabitler boolean, integer, float ve string türünde değer alabilir. Sabitler atamak için define() fonksiyonu veya const deyimi kullanılır ve sabitler değişkenlerden farklı olarak betik içinde tekrar değiştirilemezler. Ayrıca sabitler sadece bir kez tanımlanıp bir daha değiştirilmediği için güvenilirdir.

Bir sabite verilen isim PHP'de varolan diğer tüm isimlerle aynı kurallara tabidir. Geçerli bir sabit ismi bir harfle ya da alt çizgi imi ile başlar, herhangi bir sayıda harf, rakam ya da alt çizgi ile devam eder. Bir sabit ismi düzenli ifade olarak, şu şekilde ifade edilebilir: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*

Geleneksel olarak, PHP sabitleri büyük harflerle tanımlanmalıdır.

Bir sabit tanımlamak için define() fonksiyonunu veya const anahtar kelimesini kullanabilirsiniz. Bir sabiti tanımladıktan sonra değiştiremez veya tanımsız hale getiremezsiniz.

Sözdizimi:

define(name, değer, case_insensitive)

isim: Gereklidir. Sabitin adını belirtir

değer: Gereklidir. Sabit değerini belirtir

case_insensitive: İsteğe bağlı. Sabit adın büyük-küçük harfe duyarlı olmamasını belirtir. Olası değerler:

  • TRUE - Büyük / küçük harf duyarlı olma durumu
  • FALSE - Default. Büyük / küçük harf duyarlı olma durumu

ÖRNEK:

<?php 

define("UYE", "admin");

define("PAROLA", "123456");

echo UYE."
"; echo PAROLA; ?>

define() fonksiyonu 3 parametre alabilir. 3. parametresi isteğe bağlıdır. İlk parametre sabitin adı ikinci parametre sabitin alacağı değeri belirler. Yukarıdaki örnekte gördüğünüz gibi sabitleri kullanmak için değişkenler gibi başlarına $ işareti koymuyoruz. Sadece sabitin adını yazıyoruz.

Sabitler için kullanacağımız isimler , değişkenlerde kullanabileceğimiz isimlerin özellikleri ile aynı yani ARABA ile Araba değişkeni farlıdır. Bu durumu define() fonksiyonunun 3. parametresi ile aşabiliriz. Sabitlerdeki büyük küçük ayrımını devre dışı bırakabiliriz.

<?php 

define("elma", "En sevdiğim meyvelerden bir tanesi",true); 

echo ELMA; 

?>

Yukarıdaki örnek ekrana sabitin taşıdığı değeri yazar. Üçüncü parametre true ve false mantıksal değerlerini alır. True büyük küçük harf ayrımını ortadan kaldırır, false ise tam tersini yapar.

CONST TANIMLA


Sabitler define() işlevi dışında, const deyimiyle de tanımlanabilir.

ÖRNEK:

<?php 

const  SITE = "www.webcebir.com";

echo SITE;

?>

PHP 5.3 versiyonu ile sabitlerin tanımının iki yolu vardır. Sabitler const anahtar sözcüğü kullanılarak veya define() fonksiyonu kullanarak tanımlanır. const ile tanımlanan sabitlerin isimlerinin tırnak içinde yazılması gerekmez.

Bir sabit define() ile programın herhangi bir yerinde tanımlanabilirken const ile tanımlanan sabitler: fonksiyonlar, if bloklarında, döngüler gibi iç bloklarda değil en dıştaki kapsamda kullanılması gerekir Bunun nedeni const ile tanımlanan sabitlerin derleme zamanında, sabitleri tanımlar , define() fonksiyonu ise çalışma zamanında onları tanımlar. const anahtar sözcüğü define() fonksiyona göre iki kat daha hızlıdır.

SABİTİN TANIMLANIP TANIMLANMADIĞINI KONTROL EDELİM


Sabitlerin tanımlanıp, tanımlanmadığını defined() fonksiyonu ile kontrol ederiz ve fonksiyon geriye mantıksal (boolean) bir değer döndürür.

<?php

define('SITE', 'www.webcebir.com');

if(defined("SITE"))
{
    echo SITE; // ÇIKTI: www.webcebir.com
}


?>

define() fonksiyonun 3. parametresi defined() fonksiyonunu da etkiler. Varsayılan olarak defined() fonksiyonu da büyük küçük harf ayrımı yapar.

defined() işlevi, const ile tanımlanan sabitlerle de kullanılabilir.

<?php

const SITE = "webcebir.com";

if(defined("SITE"))
{
    echo SITE; // ÇIKTI: webcebir.com
}

?>

SABİTLER NEREDE KULLANILIR


Genelde template ve dil, Kullanıcı adı ve şifrelerinde, Dosya yapıları oluşturulurken kullanılır.

--- PHP KENDİ İÇİNDE SABİTLERİ ---

Gereken sabitleri kendi programımız içindede kullanabiliriz.

__FILE__ : O anda çalışmakta olan PHP dosyasının adı

__LINE__ : Bu ifadenin yer aldığı satırın sayısı

PHP_VERSION: PHP’nin sürümü

PHP_OS: PHP’nin çalıştığı işletim sistemi

Adınız

Eposta

Mesaj

1220

Güvenlik No

REKLAM
KATEGORİ
POPÜLER MAKALE