(PHP 4, PHP 5, PHP 7)
strtok — Dizgeyi bir dizgeciğe göre böler
$dizge
, string $ayraçlar
)$ayraçlar
)
strtok() işlevi dizge
dizgesini
ayraçlar
dizgesindeki karakterleri ayraç olarak
kullanarak daha küçük dizgelere böler. Yani, "Bu örnek bir dizgedir"
dizgesini boşluk karakterini ayraç olarak kullanarak sözcüklerine
bölebilirsiniz.
Sadece ilk strtok() çağrısında
dizge
değiştirgesi belirtilir. Sonraki çağrılarda
sadece ayraçlar
değiştirgesini kullanmak yeterlidir.
Baştan başlamak veya yeni dizgelerden birini ayrıştırmak için işlevi
dizge
değiştirgesi ile çağırmak işlemi ilklendirmek
için yeterlidir. ayraçlar
değiştirgesine birden
fazla ayraç koyabilirsiniz. Dizge belirtilen bu ayraçlardan ilk
rastladığıyla dizgeyi böler.
dizge
Daha küçük parçalara bölünecek dizge.
ayraçlar
Dizgeyi bölmek için kullanılacak ayraçlardan oluşan dizge.
Bir dizge parçası.
Örnek 1 - strtok() örneği
<?php
$string = "This is\tan example\nstring";
/* Sekme ve satırsonu karakterlerine göre dizgeyi bölelim */
$tok = strtok($string, " \n\t");
while ($tok !== false) {
echo "Word=$tok<br />";
$tok = strtok(" \n\t");
}
?>
İşlevin boş bir parça bulunduğu durumdaki davranışı PHP 4.1.0'dan itibaren değişmiştir. Eski davranış boş bir dizge döndürmekti. Yenisinde dizgenin o parçası basitçe atlanmaktadır. Örnek:
Örnek 2 - Eski strtok() davranışı
<?php
$dizge1 = strtok('/something', '/');
$dizge2 = strtok('/');
var_dump($dizge1, $dizge2);
?>
Yukarıdaki örneğin çıktısı:
string(0) "" string(9) "something"
Örnek 3 Yeni strtok() davranışı
<?php
$dizge1 = strtok('/something', '/');
$dizge2 = strtok('/');
var_dump($dizge1, $dizge2);
?>
Yukarıdaki örneğin çıktısı:
string(9) "something" bool(false)
Bu işlev mantıksal FALSE
değeriyle dönebileceği gibi FALSE
olarak değerlendirilebilecek mantıksal
olmayan bir değerle de dönebilir. Bu konuda daha fazla bilgi edinmek için
Mantıksal Değerler bölümüne
bakabilirsiniz. Bu işlevden dönen değeri sınamak için
===
işlecini kullanınız.