PHP/String işlevleri
explode()
değiştirBir string ifade veya değişkeni belli bir ifadeye göre parçalara ayırır ve dizi oluşturur.
<?php
$query = "panel/kullanici/giris";
$dizi = explode("/", $query); // bölü işaretlerine göre parçalanıyor
var_dump($dizi);
?>
Çıktısı:
array(3) { [0]=> string(5) "panel" [1]=> string(9) "kullanici" [2]=> string(5) "giris" }
İsteğe bağlı ikinci bir parametre daha alır. Parçalama sonucu oluşacak dizi, bu parametre kadar eleman içerir. Örneğin parametre 3 ise ilk 3 eleman parçalanıp alınırken diğerleri olduğu gibi alınır. Parametre negatifse son eleman yok sayılır.
<?php
$lang = "c c++ java c# perl php python";
$dizi = explode(" ", $lang, 3); // $dizi 3 elemanlı olacak, yani ilk 2 eleman parçalanacak
var_dump($dizi);
?>
Çıktısı:
array(3) { [0]=> string(1) "c" [1]=> string(3) "c++" [2]=> string(23) "java c# perl php python" }
<?php
$lang = "c c++ java c# perl php python";
$dizi = explode(" ", $lang, -1); // son eleman alınmayacak
var_dump($dizi);
?>
Çıktısı:
array(6) { [0]=> string(1) "c" [1]=> string(3) "c++" [2]=> string(4) "java" [3]=> string(2) "c#" [4]=> string(4) "perl" [5]=> string(3) "php" }
Görüldüğü gibi son parametre negatif olduğu için son eleman alınmadı.
implode()
değiştirBir dizinin elemanlarını belli bir ifadeye göre birleştirip karakter dizisi (string) oluşturur.
<?php
$dizi = array("c", "c++", "java", "c#", "perl", "php", "python");
$lang = implode(".", $dizi); // "nokta" ile birleştirilecek
echo $lang;
?>
Çıktısı:
c.c++.java.c#.perl.php.python
ltrim()
değiştirBir karakter dizisinin başındaki şu karakterleri siler:
- " " (boşluk)
- \0 (NULL karakter)
- \n (satır sonu karakteri)
- \t (yatay tab [sekme] karakteri)
- \v (dikey tab [sekme] karakteri)
- \r (satır başı karakteri)
<?php
$lang = " c c++ java c# perl php python";
$lang = ltrim($lang); // baş taraftaki boşluklar silinir
echo $lang;
?>
$lang değişkeninin:
ilk hali: c c++ java c# perl php python son hali: c c++ java c# perl php python
<?php
$lang = "\n\n\n\nc c++ java c# perl php python";
$lang = ltrim($lang); // baş taraftaki satır sonu karakterleri silinir
?>
ltrim() işlevine, parametre olarak bir ifade de verilebilir.
<?php
$lang = "^^^c c++ java c# perl php python";
$lang = ltrim($lang, "^"); // $lang değişkeninin başındaki ^ işareti silinecek
echo $lang;
?>
$lang değişkeninin:
ilk hali: ^^^c c++ java c# perl php python son hali: c c++ java c# perl php python
rtrim()
değiştirBir karakter dizisinin sonundan şu karakterleri siler:
- " " (boşluk)
- \0 (NULL karakter)
- \n (satır sonu karakteri)
- \t (yatay tab [sekme] karakteri)
- \v (dikey tab [sekme] karakteri)
- \r (satır başı karakteri)
Kullanım stili ltrim() işlevi ile aynıdır.
trim()
değiştirKarakter dizisinin her iki tarafından şu karakterleri siler:
- " " (boşluk)
- \0 (NULL karakter)
- \n (satır sonu karakteri)
- \t (yatay tab [sekme] karakteri)
- \v (dikey tab [sekme] karakteri)
- \r (satır başı karakteri)
<?php
$lang = "\t\t\t\tc c++ java c# perl php python\t\t";
$lang = trim($lang); // $lang değişkeninin başındaki ve sonundaki yatay sekme karakterleri silinir
?>
İkinci bir parametre olarak bir ifade de verilebilir.
<?php
$lang = "^^^c c++ java c# perl php python^^^^";
$lang = trim($lang, "^"); // $lang değişkeninin başındaki ve sonundaki ^ işaretleri silinir
?>
strlen()
değiştirKarakter dizisinin uzunluğunu döndürür.
<?php
$lang = "c c++ java c# perl php python";
echo strlen($lang); // 29 çıktılar
?>
strrev()
değiştirBir karakter dizisini ters çevirir.
<?php
$lang = "c c++ java c# perl php python";
echo strrev($lang); // nohtyp php lrep #c avaj ++c c çıktılar
?>
strstr()
değiştirKarakter dizisindeki belli bir ifadeden sonraki kısmı alır.
<?php
$mekan = "wikibooks.org";
echo strstr($mekan, "."); // .org çıktılar
?>
Üçüncü parametre olarak true verilirse önceki kısmı alır.
<?php
$mekan = "wikibooks.org";
echo strstr($mekan, ".", true); // wikibooks çıktılar
?>
nl2br()
değiştirKarakter dizisindeki \n satır sonu karakterini HTML satır sonu karakteri olan <br /> etiketiyle değiştirir.
<?php
$mekan = "PHP\nProgramlama Dili";
echo nl2br($mekan);
?>
Kaynak kod çıktısı:
PHP<br /> Programlama Dili
chr()
değiştirASCII numarası verilen bir karakter döndürür.
<?php
$char = chr(78);
echo $char; // N çıktılar
echo chr(118); // v çıktılar
?>
İlgili olarak bkz: ASCII tablosu
ord()
değiştirBir karakterin ASCII numarasını döndürür.
<?php
$ascii_no = ord("T");
echo $ascii_no; // 84 çıktılar
echo ord("d"); // 100 çıktılar
?>
İlgili olarak bkz: ASCII tablosu
parse_str()
değiştirBir karakter dizisindeki değişkenleri bulur.
<?php
// example.com/index.php?form=giris&statu=premium
$sorgu = "form=giris&statu=premium";
parse_str($sorgu);
echo $form; // giris çıktılar
echo $statu; // premium çıktılar
?>
İkinci bir parametre verilirse bir dizi oluşur.
<?php
// example.com/index.php?form=giris&statu=premium
$sorgu = "form=giris&statu=premium";
parse_str($sorgu, $dizi);
var_dump($dizi);
?>
Çıktısı:
array(2) { ["form"]=> string(5) "giris" ["statu"]=> string(7) "premium" }
ucfirst()
değiştirKarakter dizisinin ilk harfini büyük yapar.
<?php
$mekan = "vikikitap";
echo ucfirst($mekan); // Vikikitap çıktılar
?>
ucwords()
değiştirKarakter dizisindeki sözcüklerin ilk harfini büyük yapar.
<?php
$str = "programlama dili";
echo ucwords($str); // Programlama Dili çıktılar
?>
md5()
değiştirKarakter dizisinin MD5 algoritmasıyla şifrelenmiş halini döndürür.
<?php
$mekan = "Vikikitap";
echo md5($mekan); // 27caee531ad2fc4bca4c0624166e7e03 çıktılar
?>
Ek bilgi için bkz: MD5
sha1()
değiştirKarakter dizisinin SHA-1 algoritmasıyla şifrelenmiş halini döndürür.
<?php
$mekan = "Vikikitap";
echo sha1($mekan); // d8dcfc5b295f703042d9f6696737687515d9f3ab çıktılar
?>
Ek bilgi için bkz: SHA-1
quotemeta()
değiştir( ) [ ] $ . ^ + ? * \ işaretlerinin başına ters bölü getirir.
<?php
$mekan = "Vikikitap";
echo quotemeta($mekan); // \^Vi\*ki\.ki\?ta\[p\) çıktılar
?>