PHP 8 Php 8 Fonksiyonlar 2026 Güncel

Php 8 Fonksiyonlarda Scope

4 dk okuma süresi 567 görüntülenme 2024-09-16 4.9 (14 değerlendirme)

PHP 8'de scope (kapsam), bir değişkenin, fonksiyonun veya diğer yapıların nerede erişilebilir olduğunu belirler. PHP'de dört temel kapsam türü vardır: global, local (yerel), static ve function parameter (fonksiyon parametresi) kapsamları. Ayrıca, closure yapılarında kullanılan use anahtar kelimesi gibi bazı gelişmiş kapsam konuları da bulunmaktadır.

1. Global Kapsam

Global kapsam, betiğin en üst seviyesinde tanımlanan değişkenlerdir. Bu değişkenler, fonksiyonların dışında tanımlandığında globaldir. Fonksiyonlar varsayılan olarak bu değişkenlere doğrudan erişemez; erişmek için global anahtar kelimesi veya $GLOBALS süper globali kullanılır.

Örnek:

$isim = "PHP"; // Global değişken function isimYaz( ) { global $isim; // Global değişkene erişim sağlanıyor echo $isim; } isimYaz(); // "PHP" çıktısını verir

$GLOBALS Süper Globali Kullanımı:

$isim = "PHP"; function isimYaz( ) { echo $GLOBALS['isim']; // Global değişkene erişim sağlanıyor } isimYaz(); // "PHP" çıktısını verir

2. Yerel (Local) Kapsam

Bir fonksiyon veya metodun içinde tanımlanan değişkenler, yerel (local) kapsamda olur. Bu değişkenler, sadece tanımlandıkları fonksiyonun içinde erişilebilir. Fonksiyon dışında erişilemezler.

Örnek:

function merhaba( ) { $isim = "PHP"; // Yerel değişken echo $isim; } merhaba(); // "PHP" çıktısını verir echo $isim; // Hata! $isim değişkeni global değil, fonksiyon dışında tanımlı değil

3. Static Kapsam

PHP'de bir değişkenin fonksiyonlar arasında kalıcı olmasını sağlamak için static anahtar kelimesi kullanılır. static değişkenler, fonksiyon sonlandırıldığında değerini kaybetmez, bir sonraki çağrıldığında önceki değeriyle devam eder.

Örnek:

function sayici( ) { static $sayi = 0; // Değeri sadece ilk seferde atanır $sayi++; echo $sayi; } sayici(); // 1 çıktısını verir sayici(); // 2 çıktısını verir sayici(); // 3 çıktısını verir

Bu örnekte, $sayi değişkeni, fonksiyon her çalıştığında kaldığı yerden devam eder.

4. Fonksiyon Parametreleri (Function Parameters)

Bir fonksiyonun parametreleri, fonksiyon çağrıldığında o parametrelerin değerlerini yerel olarak alır. Parametreler, fonksiyonun içinde tanımlandıkları için yerel kapsamda sayılır.

Örnek:

function toplama( $a, $b ) { return $a + $b; // Parametreler yerel kapsamda } echo toplama(2, 3); // 5 çıktısını verir

5. Closure ve Anahtar Kelimesi

PHP'de closure (anonim fonksiyonlar), kendi kapsamlarına sahiptir. Ancak closure içinde bir dış değişkene erişmek için use anahtar kelimesi kullanılır.

Örnek:

$mesaj = "Merhaba"; $anonimFonksiyon = function( ) use ( $mesaj ) { echo $mesaj; }; $anonimFonksiyon(); // "Merhaba" çıktısını verir

use ($mesaj) ifadesi ile closure, dışarıdaki $mesaj değişkenine erişim sağlar.

6. Global ve Yerel Kapsamın Birlikte Kullanımı

Fonksiyonlar hem global hem de yerel değişkenlerle etkileşime geçebilir, ancak bu, global değişkenlere doğrudan erişim sağlanmadığından dikkatli yapılmalıdır.

Örnek:

$globalDegisken = "Dünya"; function fonksiyon( ) { $yerelDegisken = "Merhaba"; global $globalDegisken; echo "$yerelDegisken, $globalDegisken!"; } fonksiyon(); // "Merhaba, Dünya!" çıktısını verir

7. Superglobals (Süperglobal Kapsam)

PHP'de bazı özel değişkenler global kapsamda her yerden erişilebilir. Bunlara süperglobal değişkenler denir ve $GLOBALS, $_POST, $_GET, $_SESSION, $_COOKIE, vb. gibi önceden tanımlanmıştır.

Örnek:

$_GET['isim'] = "PHP"; function getIsim( ) { echo $_GET['isim']; // Süperglobal değişkene her yerden erişim sağlanır } getIsim(); // "PHP" çıktısını verir

Sonuç

PHP 8'de kapsam yönetimi, değişkenlerin hangi bölgelerde geçerli olduğuna odaklanır. Fonksiyonlarda kullanılan değişkenler, fonksiyon parametreleri ve global değişkenler farklı kapsam kurallarına tabidir. static, global, ve use gibi yapılarla kapsamı daha karmaşık durumlarda kontrol etmek mümkündür.

Bu Dersi Değerlendirin

Bu ders size yardımcı oldu mu? Puan verin!

Geri bildiriminiz içeriğimizi sürekli güncel ve kaliteli tutmamızı sağlar.

4.9 / 5 (Toplam 14 oy kullanıldı)

Sıkça Sorulan Sorular (SSS)

Bu ders ve konuyla ilgili en çok merak edilenler

Php 8 Fonksiyonlarda Scope dersini öğrenmek için ön koşul var mı?

Bu eğitim temel seviyeden ileri seviyeye adım adım hazırlanmıştır. Kodları kopyalayıp Canlı Editör üzerinde test ederek kolayca pratik yapabilirsiniz.

Örnek kodları kendi projelerimde ücretsiz kullanabilir miyim?

Evet, PHP Hocası üzerindeki tüm kod örnekleri açık kaynak mantığıyla sunulmaktadır. Ticari veya kişisel projelerinizde serbestçe kullanabilirsiniz.

Takıldığım bir yerde nereden soru sorabilirim?

Dersin altındaki topluluk yorumları bölümünden sorunuzu sorabilirsiniz. Eğitmenlerimiz ve topluluk üyelerimiz kısa sürede yanıt verecektir.

Paylaş:
PHP Hocası Akademi

Topluluk Yorumları (0)

Ders Hakkında Yorum Yap veya Soru Sor

Henüz yorum yapılmamış. İlk yorumu siz yazın!