CodeBlanks Logo Icon CodeBlanks

Fonksiyon kapsamı

PHP kursu · Başlangıç · Ders 74/116

Fonksiyon içindeki değişkenlerin dışarıdan görünmediğini öğrenirsin.

Fonksiyon kapsamı

Fonksiyonun içinde tanımlanan değişkenler yerel değişken (local variable) adını alır ve dışarıdan görülmez. Yani function counter() { $n = 5; } tanımından sonra dışarıda echo $n; yazarsan PHP hata verir.

Bu davranış kapsam (scope) olarak bilinir. Her fonksiyonun kendi kapsamı vardır; dışarıdaki değişkenler otomatik olarak içeride görünmez. Bu sayede fonksiyonlar birbirinin değişkenlerini karıştırmaz.

global anahtar kelimesi

Dışarıdaki bir değişkeni fonksiyon içinde kullanmak istersen global anahtar kelimesi ile içe aktarabilirsin. Örnek: $score = 0; function addPoint() { global $score; $score += 1; }.

global kullanımı değişkeni kopyalamaz; fonksiyon içi ve dışı aynı değişkene erişir. Yine de çok sayıda global kullanımı kodu takip etmeyi zorlaştırır; dikkatli kullanmak gerekir.

Uygulama Yerel değişkenle sayaç yazdır

showCounter adında parametresiz bir fonksiyon tanımla. Gövdede $count = 1; yerel değişkenini tanımla ve echo $count . "\n"; ile yazdır. Sonra fonksiyonu çağır.

Örnek çözümü göster
function showCounter() { $count = 1; echo $count . "\n"; } yaz, sonra showCounter(); ile çağır.
Örnek çözüm:
<?php
// showCounter fonksiyonunu tanımla; içinde $count değişkeni olsun
function showCounter() {
    $count = 1;
    echo $count . "\n";
}
showCounter();

Kendini test et

  1. Aşağıdaki kod ne yapar?

    function show() {
        $city = "Ankara";
    }
    show();
    echo $city;
    • Ankara yazar
    • show yazar
    • Boş satır yazar
    • Hata verir, $city tanımsızdır
    Cevabı göster

    Hata verir, $city tanımsızdır — Doğru. $city fonksiyona özeldir; dışarıda tanımsızdır.

  2. global bildirimini tamamla

    $price = 100;
    
    function showPrice() {
        ____ $price;
        echo $price;
    }
    showPrice();
    Cevabı göster
    $price = 100;
    
    function showPrice() {
        global $price;
        echo $price;
    }
    showPrice();
  3. Kapsam kavramlarını eşle

    Fonksiyon içinde tanımlı
    Yerel değişken
    global $n
    Dış değişkene erişir
    return'suz fonksiyon
    null döner

Başlangıç bölümündeki tüm dersler