PHP Metin İşlemleri (String Functions) - 2
Bu sayfada string fonksiyonlarının daha “pratik” kısmına devam ediyoruz: arama, değiştirme, güvenli çıktı (XSS), formatlama ve URL/metin parçalama.
Metin Değiştirme (str_replace)
Metin içindeki ifadeyi başka bir ifadeyle değiştirmek için kullanılır.
Örnek
<?php
$metin = "Merhaba Dünya";
echo str_replace("Dünya", "KodÖrnekleri", $metin);
// Merhaba KodÖrnekleri
?>
Desenle Değiştirme (preg_replace)
Regex ile daha esnek değiştirme işlemleri yapabilirsin.
Örnek: birden fazla boşluğu teke indir
<?php
$metin = "Merhaba Dünya nasılsın?";
echo preg_replace('/\s+/', ' ', trim($metin));
// Merhaba Dünya nasılsın?
?>
Liste Metni Temiz Bölmek (explode + trim)
Virgülle ayrılmış bir metni parçalayınca boşluklar kalır; bunları topluca temizleyebiliriz.
Örnek
<?php
$metin = "asp, php, javascript, ipucu";
$parcalar = explode(",", $metin);
// her parçayı trimle
$parcalar = array_map('trim', $parcalar);
print_r($parcalar);
// ["asp","php","javascript","ipucu"]
?>
Metinden Parça Almak (substr / mb_substr)
Türkçe karakterli metinlerde mb_substr daha sağlıklı olabilir.
Örnek
<?php
$metin = "kodornekleri.com";
echo substr($metin, 0, 4); // kodo
// Türkçe için (mbstring yüklüyse)
if (function_exists('mb_substr')) {
echo mb_substr("İstanbul", 0, 3, "UTF-8"); // İst
}
?>
Formatlı Metin Oluşturma (sprintf)
Değerleri güvenli ve okunaklı biçimde metin içine yerleştirmek için idealdir.
Örnek
<?php
$ad = "Mehmet";
$puan = 87.456;
echo sprintf("Merhaba %s, puanın: %.2f", $ad, $puan);
// Merhaba Mehmet, puanın: 87.46
?>
Güvenli Çıktı (htmlspecialchars)
Kullanıcıdan gelen metni HTML’e basarken XSS’e karşı mutlaka escape et.
Örnek
<?php
$yorum = '<script>alert("xss")</script>';
echo htmlspecialchars($yorum, ENT_QUOTES, 'UTF-8');
// <script>alert("xss")</script>
?>
Satır Sonlarını <br> Yapmak (nl2br)
Textarea’dan gelen metni webde satır satır göstermek için kullanılır.
Örnek
<?php
$metin = "Satır 1\nSatır 2\nSatır 3";
echo nl2br(htmlspecialchars($metin, ENT_QUOTES, 'UTF-8'));
?>
URL Parçalama (parse_url)
Bir URL içinden host, path, query gibi parçaları almak için.
Örnek
<?php
$url = "https://kodornekleri.com/php/phpmetinislemleri2.php?x=1&y=2";
$parca = parse_url($url);
echo $parca['host']; // kodornekleri.com
echo $parca['path']; // /php/phpmetinislemleri2.php
?>