Php Başlangıç – Not İki

Php’de değişken tanımlaması $(dolar işareti) ile başlar. Ve ondan sonra değişken ismi girilir.

Örnek verilirse; $degisken , $lublin , $deliMuhendis

Şimdi bir değişken tanımlayıp ekran çıktısı alalım.

 

<?php
   $deliMuhendis = "Bana sitenin üst menüsünden yer alana YAZ DOSTUM menüsünden ulaşabilirsiniz.";
   echo $deliMuhendis;
?>

Ekran çıktısı:

Bana sitenin üst menüsünden yer alana YAZ DOSTUM menüsünden ulaşabilirsiniz.

Peki deli mühendis bey bize değişken tanımlatıp ekran çıktısı aldırdın ama değişken tanımlarken bir şart var mı ondan neden bahsetmediniz mi diyorsunuz ? Haklısınız. Hemen bahsedelim.

Değişken isimleri istenilerse tek haneli olabilir. Yani $x olarak da değişken tanımlayabilirsiniz. İsterseniz daha da uzun olabilir…

<?php 
   $x = 4;
   echo $x;
?>

Ekran çıktısı:

4

Sadece bu mu ? Değil tabii ki. Değişken tanımlamaları sayı ile başlayamaz. Bununla birlikte değişken isimleri tanımlanırken istenilen karakterler kullanılmaz. Değişken tanımlanmasında A-Z’dan olan harfler, 0-9’a kadar olan rakamlar ve _ karakteri kullanılabilir.

Peki şimdilik bu kadar. Sorunuz var mı ?

+Peki deli mühendis bey, dediklerine dikkat ettim.  $merHaba ve $mERHAba diye iki değişken tanımladım. Bunlar ikisi de aynı değişken mi yoksa farklı değişken mi, bir başka değişle bu dilde değişken tanımlamaları büyük/küçük harf duyarlı mıdır?

Doğru ya nasıl unuttum bunu . Evet, duyarlıdır. Eğer öyle değişken tanımlarsanız iki farklı değişken tanımlamış olursunuz.

İyi hatırlattın bu arada bu yazıyı burada bitirmeyecektim. Değişken tanımlamaları böyle bitmiyor tabii.  değişken isimlerini tanımlarken dikkat etmemiz gerekenler bunlar.

Şimdi diyelim bir değişkeni fonksiyon içerisinde tanımladık, $degisken diye. Sonra bu değişkeni fonksiyon dışında kullanmak istedik. Ve tam kullanırken bir de ne görelim aaa hata. Tabi hata verir. Sen onu fonksiyon içerisinde tanımlamışsın o artık bir yerel(local) değişken, o fonksiyondan çıktın mı o senin dış işlerine karışmaz kalır orada. Böyle olsun istemiyor musun o fonksiyon senin bir tanen mi, o zaman global olarak tanımla canım benim. global $degisken diye tanımlayı ver, onda bir hata görme.  Şimdi kodla beraber de izah edelim.

<!DOCTYPE html>

<html>
    <head>
        <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <?php
        $deliMuhendis = "Merhaba"; // global değişken
        
        deneme();
        
        function deneme()
        {
            $yerel = "Ben bir yerel değişken beni lütfen dışarıdan çağırmayın."; // local değişken
            global $genel; // belli değil mi zaten, ama dikkat buraya. Sen anlarsın ne demek istediğimi.
            $genel = "Beni her yerden çağırabilirsin canım benim.";
        }
        echo $deliMuhendis;
        echo $yerel;
        echo $genel;
    ?>
</body>
</html>

Ekran çıktısı:

Merhaba
( ! ) Notice: Undefined variable: yerel in C:\wamp\www\deliMuhendisPHP\dersiki.php on line 21
Call Stack
#	Time	Memory	Function	Location
1	0.0003	250104	{main}( )	..\dersiki.php:0
Beni her yerden çağırabilirsin canım benim.

Gördünüz mü? Global olarak tanımladığımızda bir sorun çıkmadı.

 

Yazının sonuna geldik. Demeden önce bu sefer size sormadan hatırladım. static diye bir şey var. Ondan bahsetmedim.

Biliyorsunuz ki, bir fonksiyon içerisinden tanımlanan yerel değişkenler fonksiyon tamamlandıktan sonra silinmekteydi. Biz diyelim ki bu yerel değişkenin silinmesini istemeyelim. O zaman ne tanımlayacağız ?

+ Static.

Bilirsiniz tabi bahsettim static diye bir şey var diye.

Evet static diye tanımlayacağız. Fonksiyondan çıktıktan sonra silinmeyecek ve eski değerini koruyacak.

<?php
   function staticNemisOgrenecegizFonksiyonu()
   { 
       static $degisken = 0;
       echo $degisken;
       $degisken++;
   }

   staticNemisOgrenecegizFonksiyonu();
   staticNemisOgrenecegizFonksiyonu();
?>

 

Become a patron at Patreon!

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d blogcu bunu beğendi: