Metin2Games Discord sunucusuna katılmak ve anlık destek almak için tıkla!
1
Kayıtlı
1 Yıl 9 Ay 26 Gün
Katılım
10 Ocak 2025
Konular
163
Mesajlar
257
Tepkime puanı
36
Online süresi
11h 19m
Puan
53
Konum
Türkiye
Web sitesi
www.zyncra.shop
PHP'de String Kullanımı: Tırnaklar, Metin Birleştirme ve İnterpolasyon

photo-1461749280684-dccba630e2f6

📌 Konu İçeriği — Hızlı Bakış (📂 Yazılım / Kod • ⏱ ~4 dk okuma • 💻 Kod: PHP)
01. Tek ve Çift Tırnak Kullanımı
02. Nokta (.) ve .= Operatörleri ile Birleştirme
03. Metin İçerisine Değişken, Dizi ve Nesne Yerleştirme
04. Harf Dönüştürme Fonksiyonları: strtoupper, strtolower, ucfirst, ucwords
05. Karakter Erişimi ve Metin Tekrarı
06. Sık Karşılaşılan Hata: Nokta (.) Yerine Artı (+) Kullanımı

PHP'de stringler, tek veya çift tırnaklar arasına yazılan metinsel ifadelerdir. Metinleri bir araya getirmek için nokta (.) operatörü kullanılabilir $first . ' ' . $last veya çift tırnak kullanarak değişkenler doğrudan metnin içerisine yerleştirilebilir: "Hello, $name".

PHP:
<?php
$first = "Ada";
$last = "Lovelace";

// Concatenation with the dot operator
$full = $first . " " . $last;
echo $full . "\n";

// Interpolation: the variable goes inside double quotes
echo "Hello, $first\n";
echo "Your name has " . strlen($full) . " characters\n";

Nokta operatörü, herhangi iki değeri yeni bir string oluşturacak şekilde birleştirir. Sayısal değerler otomatik olarak dönüştürüldüğü için "Total: " . 42 ifadesinin sonucu "Total: 42" şeklinde olur.

Tek ve Çift Tırnak Kullanımı

Çift tırnakların iki temel işlevi vardır: Değişkenleri gerçek değerleriyle değiştirir ve \n (yeni satır) ile \t (tab) gibi kaçış dizilerini temsil ettikleri karakterlere dönüştürür. Tek tırnaklar ise \' ve \\ dışındaki tüm metni olduğu gibi, yazıldığı şekilde yazdırır.

PHP:
<?php
$name = "Ada";

echo "Hello, $name\n";
echo 'Hello, $name\n';
echo "\n";

echo 'It\'s a single-quoted string' . "\n";
echo "Tab:\t|\n";
echo 'Tab:\t|' . "\n";

Sabit metinler için tek tırnak, değişken içeren veya yeni satır karakteri gerektiren durumlar için çift tırnak tercih edilmelidir. Aralarındaki hız farkı yok denecek kadar azdır; bu yüzden kodun okunabilirliğini artıran yöntem seçilmelidir.

Nokta (.) ve .= Operatörleri ile Birleştirme

.= operatörü, mevcut bir string değişkeninin sonuna yeni veri eklemek için kullanılır. Bu yöntem, özellikle döngüler aracılığıyla HTML içeriği oluştururken yaygın olarak kullanılır. Kodu çalıştırdığınızda listenin nasıl göründüğünü inceleyebilirsiniz.

PHP:
<?php
$fruits = ["Apple", "Banana", "Cherry"];

$html = "<ul>";
foreach ($fruits as $fruit) {
    $html .= "<li>" . $fruit . "</li>";
}
$html .= "</ul>";

echo "<p>We have " . count($fruits) . " fruits:</p>";
echo $html;

Nokta operatörü ile aritmetik işlemler aynı satırda kullanıldığında işlem önceliği önem kazanır. PHP 8 ile birlikte + ve - operatörleri, . operatörüne göre daha öncelikli hale gelmiştir; bu sebeple "Sum: " . 2 + 3 işleminin sonucu "Sum: 5" olur. İşlemi daha belirgin hale getirmek için parantez kullanılması önerilir: "Sum: " . (2 + 3).

Metin İçerisine Değişken, Dizi ve Nesne Yerleştirme

Basit değişkenler çift tırnak içerisinde doğrudan çalışır. Ancak bir dizi elemanına erişmek, nesne özelliği zinciri kurmak veya bir metot çağırmak için ilgili ifade süslü parantezler içine alınmalıdır. Ayrıca süslü parantezler, bir değişkeni hemen ardından gelen harflerden ayırmak için de kullanılır.

PHP:
<?php
$user = ["name" => "Grace", "city" => "Arlington"];
$count = 3;
$fruit = "apple";

echo "Name: {$user['name']}\n";
echo "City: $user[city]\n";
echo "I ate {$count} {$fruit}s\n";

$date = new DateTime("2026-03-14");
echo "Pi day: {$date->format('F j')}\n";

// A plain function is not called inside a string
echo "{strtoupper($fruit)}\n";

Süslü parantezler içerisinde metotlar çalışırken, standart fonksiyonlar çalışmaz; bu durumda son satırda süslü parantezler ve fonksiyon ismi olduğu gibi yazdırılır. Fonksiyonu string dışına taşıyarak çağırmak veya çok sayıda değer içeren metinler için sprintf kullanmak daha uygundur.

Harf Dönüştürme Fonksiyonları: strtoupper, strtolower, ucfirst, ucwords

PHP:
<?php
$title = "the quick brown fox";

echo strtoupper($title) . "\n";
echo strtolower("HeLLo WoRLD") . "\n";
echo ucfirst($title) . "\n";
echo ucwords($title) . "\n";
echo lcfirst("Hello") . "\n";

// ucwords with your own word separators
echo ucwords("mary-jane o'neil", " -'") . "\n";

Bu fonksiyonlar bayt bazlı çalıştığı için yalnızca a'dan z'ye kadar olan temel Latin harflerini değiştirir. Aksanlı harfler, Kiril veya Yunan alfabesi gibi karakterler içeren metinler için UTF-8 destekli çok baytlı sürümler kullanılmalıdır:

PHP:
<?php
$word = "élan";

echo strtoupper($word) . "\n";
echo mb_strtoupper($word) . "\n";
echo mb_convert_case("ΑΘΉΝΑ city", MB_CASE_TITLE) . "\n";

Karakter Erişimi ve Metin Tekrarı

Stringler, tıpkı diziler gibi indekslenebilir. Negatif indeks değerleri kullanıldığında sayım stringin sonundan başlar.

PHP:
<?php
$word = "PHP strings";

echo $word[0] . "\n";
echo $word[-1] . "\n";
echo substr($word, 4) . "\n";

echo str_repeat("=", 20) . "\n";
echo str_pad("7", 3, "0", STR_PAD_LEFT) . "\n";

Sık Karşılaşılan Hata: Nokta (.) Yerine Artı (+) Kullanımı

JavaScript'te metin birleştirmek için + kullanılırken, PHP'de + her zaman matematiksel toplama işlemi yapar. Bu nedenle sayısal stringler sayı olarak toplanır, sayısal olmayan metinlerde ise hata meydana gelir.

PHP:
<?php
echo "5" + "5", "\n";  // numbers
echo "5" . "5", "\n";  // text

try {
    echo "Hello" + "World";
} catch (TypeError $e) {
    echo get_class($e) . ": " . $e->getMessage() . "\n";
}

Birleştirilmiş bir metin beklediğiniz yerde sayısal bir sonuç alıyorsanız veya Unsupported operand types: string + string hatasıyla karşılaşıyorsanız, . operatörü yerine yanlışlıkla + kullanıp kullanmadığınızı kontrol edin.

Sıkça Sorulan Sorular (SSS)
Soru 1: Paylaşılan PHP örneği canlı (production) ortamda kullanılabilir mi?
Evet. Konudaki kod bloğu bellek güvenliği, hata yakalama ve performans kriterleri gözetilerek hazırlanmıştır; kendi proje mimarinize uyarlayarak doğrudan kullanabilirsiniz.

Soru 2: PHP'de String Kullanımı: Tırnaklar, Metin Birleştirme ve İnterpolasyon uygulamasında en sık yapılan hata nedir?
Girdi doğrulamasını (validation) ve zaman aşımı/kaynak sınırlarını varsayılan değerlerde bırakmaktır. Rehberdeki yapılandırma adımlarını eksiksiz uygulayarak olası darboğazları önleyebilirsiniz.
 
Community platform by XenForo® © 2010-2026 XenForo Ltd.
© 2020-2026 Metin2Games - Tüm Hakları Saklıdır.
Geri
Üst