Php Declare

php declare

Php Declare

Php de declare özelliği katı kurallar yani özellikle bu şekilde olacak dediğimizde kullanırız. Bir düşünün bir matematik işlemi yapacaksınız ve kullanıcıdan değer girmesini istediniz. Kullanıcı bilmeden sayı yerine yazı girebilir işte burada sisteme uyarı vermenin en kolay yolu php declare özelliğimizdir. Hemen bir örnek yapalım. 

function sahap($deger1, $deger2){
        
        $topla = $deger1 + $deger2 ; 
        return $topla;  

    }


    echo sahap("3","8");  // çıktısı :  11 

bir tık zorlaştıralım 

    function sahap(int $deger1, int $deger2){  // burada dedik ki int yazı burası integer sayı ona göre işlem yap ancak php içerikler sayı olduğu için bize yardımcı oldu 
        
        $topla = $deger1 + $deger2 ; 
        return $topla;  

    }


    echo sahap("3","8");   // çıktı : 11 

hata alalım 

 function sahap(int $deger1, int $deger2){
        
        $topla = $deger1 + $deger2 ; 
        return $topla;  

    }


    echo sahap("Şahabettin","8");   // hata sayfası gelecektir çünkü "Şahabettin" bir sayı değildir. Biz yukarıda int olmasını istedik. Bazı sunucu veya localhost ta sadece uyarı verebilir ama bu işlem bir hatadır. 

declare   fonksiyondan önce yazılmalıdır.  Kullanımı :  declare(strict_types = 1);  

declare(strict_types = 1); sadece int ile sınırlı değildir bool, float, strin içinde kullanabilirsiniz. 

 declare(strict_types = 1);

    function sahap( int $deger1, int $deger2){   //       $deger1,  $deger  olarak yazsak yani int siz yazsak sorun olmayacaktır
        
        $topla = $deger1 + $deger2 ; 
        return $topla;  

    }


    echo sahap("15","8");   // çıktımız:  hata dönecektir.

 declare özelliğimizi fonksiyonun içindeki değerlere tanımlayabildiğimiz gibi fonksiyonun sonucu da declare edebiliriz. 

 declare(strict_types = 1);

    function sahap( int $deger1, int $deger2) : int {  // fonksiyonun sonucu int olarak istedik. 
        
        $topla = $deger1 + $deger2 ; 
        return $topla;  

    }


    echo sahap( 15, 8);   // çıktısı : 23  

veya  yine çalıştı çünkü strin 2 değerin toplamıda int olarak sonuçlandı 

 declare(strict_types = 1);

    function sahap(   $deger1,   $deger2) : int {
        
        $topla = $deger1 + $deger2 ; 
        return $topla;  

    }


    echo sahap( "15", "8");   // çıktısı : 23 

Tepkiniz Nedir?

like
3
dislike
0
love
0
funny
0
angry
0
sad
0
wow
0