Php String Fonksiyonları

Php String Fonsiyonları

Php string fonksiyonları string ifadeleri parçalama, birleştirme, bölümlere ayırma, ifadenin uzunluğunu bulma gibi işlemleri kolaylıkla yapabilmemizi sağlayan php tarafından kullanıma sunulan hazır string veri fonksiyonlarıdır.

strlen() String Fonksiyonu

Bu fonksiyon string ifadenin toplam karakter uzunluğunu boşluklarda dahil olacak şekilde bulmak için kullanılır.

<?php
$kelime = 'Merhaba';
echo 'Merhaba kelimesi '.strlen ($kelime). ' karakterden oluşmaktadır.';
?>

trim(), ltrim(), rtrim() String Fonksiyonları

Bu üç fonksiyon sırasıyla string verinin hem sağındaki hem solundaki, sadece solundaki ve sadece sağındaki boşluk karakterlerini silmek için kullanılır.

FonksiyonAçıklama
trim()Kelimenin hem sağındaki hem solundaki boşlukları temizler.
ltrim()Kelimenin sadece solundaki boşlukları temizler.
rtrim()Kelimenin sadece sağındaki boşlukları temizler.

trim fonksiyonu en sık kullanacağınız türden bir boşluk temizleme fonksiyonudur. Örneğin uygulamanızdaki kullanıcı girişi ekranında kullanıcı yanlışlıkla yada bilerek kullanıcı adı ve şifre alanlarına boşluk girişi yapabilir ama bunu engellemek için trim fonksiyonunu kullanabiliriz. Başka bir örnek belirli sayıda karakter girilmesi gereken alanlarda yine boşluk kullanılarak girilmiş gibi gösterilmesinin önüne geçebiliriz.

<?php
$metin = " Metin İşleme ";
echo "Normal uzunluk : " . strlen($metin) . "<br />";
echo "Soldan :" . strlen(ltrim($metin)) . "<br />";
echo "Sağdan :" . strlen(rtrim($metin)) . "<br />";
echo "Sol ve Sağdan :" . strlen(trim($metin)) . "<br />";
?>

substr() String Fonksiyonu

String ifadelerin kısaltılması için kullanılan bir fonksiyondur. Örneğin bir blog sayfası yapıyorsunuz ve anasayfanızda yazıların sadece belirli göstermek ve devamını oku butonu yerleştirmek istiyorsunuz. Bu durumda substr işinizi görecektir. Aşağıdaki örnekten incelediğimizde lorem ipsum dan aldığımız oldukça uzun bir paragrafın sadece 50 karakterlik kısmını görünür yaptık.

<?php
$paragraf = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. In condimentum eleifend dui et consectetur. Integer congue sapien vitae diam iaculis, id tincidunt orci vulputate. Ut et ex consectetur eros blandit tempor nec ac metus. Mauris commodo, risus sit amet ultrices laoreet, lorem libero condimentum lacus, vitae ornare ante tortor efficitur purus. Integer eget tellus vulputate, interdum tortor vitae, condimentum ante.";

echo "Paragraf uzunluğu :" . strlen($paragraf) . "<br />";

echo "Yeni Paragraf Uzunluğu :" . strlen(substr($paragraf, "0", "50")) . "<br />";

echo substr($paragraf, "0", "50");
?>

wordwrap() String Fonksiyonu

String ifadenin belirlenenden fazla uzun olması durumda kullanılır. İçeriğin alandan taşmaması için kullanabiliriz. Aşağıdaki örnekteki metni bir kutu içerisine yazdığımızı varsayalım. Wordwrap ile 30 karakter bir alt satıra geçerek metnin kutudan taşmasını önlemiş olduk.

<?php
$ifade = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque ut velit mauris. Suspendisse feugiat enim pulvinar bibendum consequat. ";
echo wordwrap($ifade, "30", "<br/>");
?>

substr_count() String Fonksiyonu

Metin içerisinde aradığımız karakterin kaç kez kullanıldığını bulmak için kullan string fonksiyonudur. Bu fonksiyon büyük küçük harfe duyarlıdır. Bu neden ile aşağıdaki örnekte a harfi bize 3 sonucunu verecektir.

<?php
$paragraf = "Ali ata bak";
echo substr_count($paragraf, "a");
?>

strtolower(), strtoupper(), ucfirst(), lcfirst(), ucwords() String Fonksiyonları

Bu fonksiyonlar string ifadelerin içerisindeki harfleri büyük veya küçük yapmak için kullanılır. Örneğin projenizde bir başlık alanı olduğunu varsayalım. Bu başlıktaki kelimelerin sadece ilk harfleri büyük yapmak için kullanabilirsiniz. Tüm harflerini büyük yapmak yada küçük yapmak için kullanılabilirsiniz.

FonksiyonAçıklama
strtolower()tüm harfleri küçük yapar.
strtoupper()TÜM HARFLERİ BÜYÜK YAPAR.
ucfirst()Cümledeki ilk kelimenin ilk harfini büyük yapar.
lcfirst()cümledeki İlk Kelimenin İlk Harfini Küçük Yapar. Diğerlerini Etkilemez.
ucwords()Cümledeki Tüm Kelimelerin Baş Harflerini Büyük Yapar.
<?php
$paragraf = "Ali ata bak";
$paragraf2 = "ali ata bak";
echo strtolower($paragraf) . "<br />"; //ali ata bak 
echo strtoupper($paragraf) . "<br />"; //ALI ATA BAK
echo ucfirst($paragraf2) . "<br />"; // Ali ata bak
echo lcfirst($paragraf) . "<br />"; // ali ata bak
echo ucwords($paragraf) . "<br />"; // Ali Ata Bak
?>

explode(), implode() Fonksiyonları

Metin işlemlerinde belki en sık başvuracağınız fonksiyonlardır. explode ve implode fonksiyonları dizi fonksiyonlarıdır. Implode fonksiyonu gönderilen dizi elemanlarını belirtilen ayraç ile birleştirerek bir metin elde etmemizi sağlar ama explode fonksiyonu implode fonksiyonun tam tersi çalışarak gönderilen veriyi belirtilen ayraç ile ayırıp bir dizi olarak geri döndürür. Diziler hakkında bilgi almak için Php Dizi (Array) Nedir? Php Dizi Nasıl Kullanılır? başlıklı yazıma göz atabilirsiniz.

<?php
$metin = 'Lor,em ips,um dolo,r s,it am,et';
$sonuc = explode (',',$metin);
print_r($sonuc); // Array ( [0] => Lor [1] => em ips [2] => um dolo [3] => r s [4] => it am [5] => et )
?>

Yukarıdaki explode örneğimizde metin değişkenin değerini virgüllerden ayırıp bir dizi oluşturmuştur. Virgül yerine boşluk kullanırsak bu sefer boşluklardan ayırıp bir dizi oluşturacaktır. Ama virgül veya boşluk yerine ayraç olarak nokta kullansaydık metin değişkenin değeri olduğu gibi tek bir eleman olacaktır.

Aşağıdaki implode örneğimizde ise veriyi dizi olarak göndermemiz gerekiyor. Çünkü implode dizi olarak gönderilen veriyi belirtilen ayraç ile birleştirerek bütün bir hale getirir. Fonksiyona gönderdiğimiz diziyi virgül ile birleştir. Virgül yerine ihtiyacınıza uygun herhangi bir karakter kullanılabilir.

<?php
$dizi = ['Lorem', 'ipsum','dolor','sit','amet'];
$sonuc = implode (',',$dizi);
print_r($sonuc); //Lorem,ipsum,dolor,sit,amet
?>

str_replace() Fonksiyonu

Replace kelimesinden de anlayacağınız üzere değiştirmekten bahsetmektedir. Bu fonksiyon 3 parametre almaktadır. İlk parametre değiştirmek istediğimiz değeri, ikinci parametre ne ile değiştirmek istediğimizi, üçüncü parametremiz ise fonksiyona göndereceğimiz veriyi temsil etmektedir.

<?php
$metin = 'Ali ata bak';
echo str_replace('Ali', 'Hasan', $metin); // Hasan ata bak
?>

Yukarıdaki örneğimizde en basit haliyle metin değişkeni içerisindeki Ali ismini Hasan ile değiştirdik.

strrev() Fonksiyonu

String ifadeleri ters çevirmek için kullanılan fonksiyondur.

<?php
$metin = 'Ali ata bak';
echo strrev($metin); // kab ata ilA
?>

htmlentities(), strip_tags(), addslashes() Fonksiyonları

Bu fonksiyonlar formlar aracılığı ile kullanıcıdan veri alırken güvenlik amacı ile kullanılabilir ama basit önlemlerdir.

FonksiyonAçıklama
htmlentities()Html etiketleri etkisizleştirmek için kullanılır.
strip_tags()Html etiketleri ayıklamak için kullanılır.
addslashes()Tırnakları etkisizleştirmek için kullanılır. Tırnakların etkisizleştirilmesi için ters taksim ( \ )koyulur.
<?php
$ifade1 = "<strong>Ali ata bak.</strong>";
$ifade2 = "Ali'nin arabası mavi.";
echo htmlentities($ifade1) . "<br />";
echo strip_tags($ifade1) . "<br />";
echo addslashes($ifade2) . "<br />";
?>

Örneğimizi incelediğimizde birinci ifade içerisinde strong etiketini kullandık normalde tüm harflerin kalın olması gerekir ama htmlentities fonsiyonundan geçirdiğimiz için strong etiketi işlemini yitirdi. Çünkü htmlentities fonksiyonu html etiketlerini etkisiz hale getirmektedir ama kaldırmamaktadır.

Birinci ifademizi strip_tags fonksiyonumuz ile kullandığımızda ise ifadenin yine kalın harfli olmadığını ama strong etiketlerinin temizlendiğini görebilirsiniz. Çünkü strip_tags html etiketlerini temizlemektedir.

İkinci ifademizde ise addslashes fonksiyonunu kullandık. Bu fonksiyon tırnak karakterlerini etkisiz hale getirmektedir.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Exit mobile version