PHP sabitleri
PHP sabitleri yapacağın çalışmalarda adı üstünde değişken olmayacak, çalışma boyunca hiç değiştirilmeden sabit kalacak değerleri tanımlaman için kullanılır. Ayrıca sabitler sadece bir kez tanımlanıp bir daha değiştirilemediği için güvenlidir.
Sabitlerin tanımlanması define() fonksiyonu ile yapılır. İki argument ile uygulanır. Örnek;
<?php define('site_adi', 'phpr.org'); // site_adi adında bir sabit oluşturduk ve değerini phpr.org yaptık ?>
Sabitler için kullanacağımız isimler değişkenlerde kullanabileceğimiz isimlerin özellikleri ile aynı.
Sabitleri kullanırken değişkenlerdeki gibi başına bir dolar ($) işareti koymamamız gerekiyor. Sabitler bir karakter eklenmeden direkt olarak yazılır ve kullanılır.
<?php define('gezegen', 'dünya'); echo gezegen; ?>
Ekranda dünya yazar.
Sabitleri nerede kullanabilirim?
Dosya dizinlerini kaydederken, veritabanı olmayan sitelerde kullanıcı adı ve şifreleri ya da veritabanı kullanılan sitelerde de veritabanı kullanıcı adı ve şifre gibi bilgilerini saklarken ve çalışma boyunca hep okuyacağımız ama hiç değiştirmeyeceğimiz nitelikte olan veriler için sabitleri kullanabiliriz.
Bir sabitin tanımlanıp tanımlanmadığına nasıl bakarız?
Bunun içinde defined() fonksiyonu kullanılır. Örnek;
<?php define('site', 'phpr.org'); echo defined('site'); ?>
Ekranda 1 yazar, bu 1 sonucu olumlu anlamına gelir. Olumsuz olduğunda ekranda bir şey yazmaz. (Bu fonksiyon if koşullarında kullanılır)
Eğer sabit daha önceden tanımlamışsan ve onu yeniden tanımlamaya çalışırsan hata verir. Bu yüzden önce tanımlanmış mı diye kontrol etmen gerekir.
Yazılanlar ilgini çektiyse, yenilerinden haberdar olmak için e-mail bültenine abone olabilirsin.
defined fonksiyonunu bilmiyordum.Nasıl bilmem böyle bir fonksiyonu!Güzel yazı
Güzel Anlatım teşekkürler
[…] değişkenleri, sabitleri ve […]
verdiğiniz örneği denedim örnek gibi bir tanede ben yaptım fakat ekranda 1 yazmadı kontrolde ettim başka bir hata nedeni olabilirmi?
güzel iyi hoş yanlız bir sorunum var benim örnegin fonk.php dosyam var inc klasöründe index.php var ana dizinimde
fonk.php içinde $sitebaslik=”sitemin adı”;
yazıyor
ben index.php dosyasında ahmeticik – echo yada nasıl çekeceksem nasıl tanımlarım ahmeticik – den sonra fonk.php deki $sitebaslik degerini ?
sanırım bir php sayfasındakinin diğer php sayfasına aktarmak istiyosunuz bunun için require ‘deneme.php’; şeklinde yapabilrisiniz
59 yaşımdayım. Sitedeki emekleriniz için çok teşekkür ediyorum. Bu yaşta inşallah php yi halledeceğim.
Abicim ben de 33 yaşındayım yaş kaç olursa olsun yeni birşeyler öğrenmek güzel…
Benim de yaş 33 olacak 4 ay sonra. Öğrenmenin yaşı yok diye ne de güzel demiş atalarımız.
Yeni başladım PHP’ye. Paylaşımlar için teşekkürler Musa Bey,
Ben 12 yaşındayım html ve css öğrendim şimdi sıra php de ogrenmenin yaşı yok
çok güzel bir site gerçekten çok iyi anlatıyorsunuz .
allah razı olsun.
define (‘test’ , ‘test1’);
if(defined(‘test’)==1);
{
echo ‘her sey super dostum :D’;
}
soyle bi sey yazdimcalisdi tskler ederim 🙂
Teşekkürler. gerçekten anlaşılır bir şekilde anlatım olmuş.
Şimdi bunun amacı nedir? Nerede kullanacağız sayfada mı daha nerede?
site adresini veya site adını yada kullanıcının ismini yazmakta kullanabilirsin
o kadar ilgi çekici yazıyorsunuz ki anında kapıyorum teşekkürler.
Merhaba, Şöyle bir şey yazdım ancak ekrana düzgün çıktı alamadım? Her şey aynı neden olduğunu anlayamadım?
define(‘user1’, ‘atakan’);
$yasi = 15;
$user_number = 156;
echo “adı: user1 yaşı: $yasi kullanıcı numarası: $user_number Kullanıcı bilgi sonu.”;
define(‘user1’, ‘atakan’);
$yasi = 15;
$user_number = 156;
echo ” adı:”, user1, ” yaşı:”, $yasi, ” kullanıcı numarası: “,$user_number ,” Kullanıcı bilgi sonu.”;
bu şekilde çalışabilir sanırım atakan.
Hocam bu sabitleri silebilir miyiz? Silebilirsek nasıl sileceğiz.
Bu siteyle php’ye baş koyduk hadi hayırlısı 🙂
sizin sayenizde php öğreniyorum. Elinize emeğinize sağlık.
Teşekkürler hocam çok faydalı bilgiler veriyorsunuz.
Teşekkürler Hocam Sağol
yaw bayiliyurum bu siteye 😀
Unuttuğum bilgileri tazeliyorum.Teşekkür ederim 🙂
19 yaşımdayım c# sıkıldım dedim bi php bakayım hiç zorlanmadım tahmin ettiğim gibi her şey teşekkürler 🙂