Merhabalar, explode fonksiyonu php üzerinde bir metin üzerinde blirttiğiniz ayraç sayesinde metni array halinde almanıza yarar.
Öncelikle PHP Array İşlemleri konu başlıklı array ile ilgili makalemi okuyabilirsiniz.
Örneğin elimizde bir metin mevcut,
"Merhaba dünya ben bir programcık parçasıyım."
Varsayılan metnimiz bu olsun, Boşluk karakterini ayraç olarak kullanıp, metni kelime kelime array halinde çıktı almayı görelim.
<?php
$metin = 'Merhaba dünya ben bir programcık parçasıyım.';
$array = explode(' ',$metin);
print_r($array);
?>
Ekran çıktısı
Array ( [0] => Merhaba [1] => dünya [2] => ben [3] => bir [4] => programcık [5] => parçasıyım. )
Şeklinde olacaktır. yukarıda array kullanımı konusunu inceleyerek metinleri ekrana kelime kelime bastırabilirsiniz.
Bir text metinde satır ayrımı yapmak ta explode ile kolayca yapılabilir,
Örnek verecek olursak,
<?php
$metin = '
Merhaba dünya
ben bir programcık parçasıyım.'
;
$array = explode("\n",$metin);
print_r($array);
?>
Bu kodun ekran çıktısı
Array ( [0] => [1] => Merhaba dünya [2] => ben bir programcık parçasıyım. )
Şeklinde olacaktır.
Şimdi burada değinmek istediğim bir püf nokta operatörler ile ilgili, yani tırnak meselesi, üstteki örneğimize dikkat ettiyseniz tek tırnaklı boşluk karakteri kullandım, alttakinde ise çift tırnaklı n şeklinde bir karakter kullandım.
\r \n \t karakterleri html olmayan özel karakterlerdir, bu karakterler işletim sistemi ile alakalıdır. ve boşluk satır atlama için kullanılırlar, \r ile n aynı işlem için kullanılır, \n linux \r ise windows için satır atlama anlamında kullanılır.
Diğer değinmek istediğim konu çift tırnak ile tek tırnak arasındaki fark, Php de tek tırnak arası hiçbir şartla yorumlanmaz, çift tırnak arası ise değişken, yada hex char gibi kodlamaları yorumlar ve çıktı verir.
yani bi ikinci kodda '\n' şeklinde kullanmış olsaydık explode işlemi gerçekleştiremezdi, çünkü özel karakter yorumlanmadan işleme alınır doğal olarak metin içersinde n şeklinde bir ayraç mevcut olmadığı için metni satırda bölemezdi.