- PHP’de değişkenler $ işaretiyle başlar, değişken ismiyle devam eder.
- Değişken isimleri bir harf veya alt çizgi ile başlamak zorundadır.
- Bir değişken isminde sadece rakam ve harfler bulunabilir (A-z, 0-9 ve _ )
- Bir değişken isminde boşluk karakteri bulunmamalıdır.
- PHP'de değişken isimleri büyük küçük harfe duyarlıdır. (a ve A farklı isimlerdir)
PHP Değişken Oluşturmak (Tanımlamak)
PHP’de değişken tanımlama komutu bulunmamaktadır.
Bir değişken, kendisine ilk değer atamasında yaratılmış olur:
$meyve="Elma";
Yukarıdaki tanımlama işleminin yürütülmesi sonuncunda meyve değişkeni Elma değerini tutuyor olacaktır.
İp Ucu: Eğer değer atamadan bir değişken yaratmak isterseniz değişkene null değerini atayın. Null aynı zamanda boş içerik demektir.
Şimdi string (metinsel) ve sayısal değerler içeren değişkenler tanımlayalım:
<?php
$txt="Merhaba PHP!";
$x=17;
?>
$txt="Merhaba PHP!";
$x=17;
?>
Not: Bir değişkene string bir ifade atayacağınız zaman bu ifadeyi tırnak içine alın.
PHP Zahmetsiz Yazılan Bir Dildir
PHP’de değişkene değer atamadan önce bir tanımlama yapma zorunluluğu yoktur.
Yukarıdaki örneğimizi bakarsanız, öncesinde hangi tipte nasıl bir değişken tanımlayacağımızı deklere etmedik.
PHP bir değişkene atanan değerin türüne göre değişken tipini olması gereken tipe kendiliğinden dönüştürür.
Çoğu programlama dillerinde bir değişken kullanılmadan önce adı ve tipi ile tanımlanmalıdır.
PHP Değişken Kapsamları
The scope of a variable is the portion of the script in which the variable can be referenced.
PHP’de dört ayrı kapsamda değişkenler sınıflandırılır:
- Local (yerel)
- Global (evrensel)
- Static (Kalıcı)
- Parametre
Local Kullanım:
Bir değişken bir fonksiyon içinde tanımlanmışsa sadece o fonksiyon içinde kullanılabilir. O fonksiyon içinde o değişkene ulaşılabilir, değeri okunabilir veya değiştirilebilir (Bir değişenin local (yerel) kullanımı şöyledir):
<?php
$a = 5; // global(evrensel)kullanım
function kontrol()
{
echo $a; // local (yerel) kullanım
}
kontrol();
?>
$a = 5; // global(evrensel)kullanım
function kontrol()
{
echo $a; // local (yerel) kullanım
}
kontrol();
?>
Yukarıdaki program parçasının çalışması ile her hangi bir çıktı oluşmaz. Çünkü echo ile yerel $a değişkenine atıfta bulunuluyor ve yerel kullanımda $a değişkeni yaratılmış değil, yada değer almış değildir.
Başka bir fonksiyonda da aynı isimli başka bir değişken kullanmış olabilirsiniz. Yeler kullanımdaki tüm deişkenler tanımlandıkları fonksiyon içinde tanınırlar dışarısında bilinmezler.
Yere kullanımda değişkenler fonksiyon çalıştırıldığında oluştur ve fonksiyonun çalışması sona erdiğinde de silinirler.
Global (Evrensel) Kullanım:
Global kullanımda değişkenler fonksiyonların dışında tanımlanır.
Global değişkenlere fonksiyon dahilinde olmayan programın herhangi bir yerinde erişilebilir.
Foksiyon içinde global değişkene erişilmek istenirse global ön eki (anahtarı) kullanılır.
<?php
$x = 10;
$y = 20;
function kontrol()
{
global $x, $y;
$y = $x + $y;
}
kontrol();
echo $y;
?>
$x = 10;
$y = 20;
function kontrol()
{
global $x, $y;
$y = $x + $y;
}
kontrol();
echo $y;
?>
Yukarıdaki kodların çalışmasıyla 30 çıktısı elde edilir.
PHP aynı zamanda tüm global değişkenleri $GLOBALS[index] adında bir dizi değişkeninde saklar. Bu diziye aynı zamanda fonksiyon içinden erişilebilir ve güncelleme yapılabilir.
Yukarıdaki örneği şu şeklide yeniden yazabiliriz:
<?php
$x = 10;
$y = 20;
function kontrol()
{
$x = 10;
$y = 20;
function kontrol()
{
$GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y'];
global $x, $y;
$y = $x + $y;
}
kontrol();
echo $y;
?>
global $x, $y;
$y = $x + $y;
}
kontrol();
echo $y;
?>
Static Kullanım
Bir fonksiyon çalışmasını bitirdiğinde fonksiyonun tüm değişkenleri doğal olarak siliniyordu. Bazen bu değişkenlerin silinmemesini değerlerini korumasını isteriz.
Bunu yapmak için değişkenleri ilk defa kullanırken static anahtarını kullanırız.
static $beniUnutma;
Bundan sonra fonksiyon her çağrıldığında, değişken fonksiyonun son çağrılışındaki son değeri koruyor olacaktır.
Parametre
function fonksiyonum ($para1,$para2,...)
{
// fonksiyon kodları
}
{
// fonksiyon kodları
}
parametrelere aynı zamanda argüman da denir. Parametreler fonksiyonlar hakkında bize çok fazla bilgi verir. Fonksiyonun amacını anlamamıza yardımcı olur.