Ads

Jumat, 22 April 2011

Membaca File Teks dengan PHP

Artikel ini digunakan untuk menjawab pertanyaan dari Mr Daily Gadget di artikel ini. Pertanyaannya adalah sebagai berikut:


Mas, mau nanya…


gimana caranya memanggil teks secara berurutan?


misal saya punya file.txt yang didalamnya berisi 5 baris teks yaitu bari1,baris2,baris3,baris4, dan baris5.


saya maunya dipanggil dengan php, dan ditanmpilkan..


pertama dipanggil baris1, lalu diganti baris2, lalu diganti baris3, dst.


setelah habis baris5, kembali kebaris 1.


mohon bantuanya mas.. trims


Nah itu dia pertanyaannya. Jadi intinya teman kita ini ingin tau bagaimana cara membuka file di php, lalu membaca baris tertentu dari file yang ada. Sebenarnya cara ini sangat mudah dan tidak memusingkan. Logikanya / Algoritmanya adalah seperti ini:




  1. Kita buka file yang di maksud

  2. Masukan tiap baris ke dalam variabel array

  3. Untuk memanggil baris tertentu, kita tinggal memanggil array tersebut


Berikut ini adalah script yang bisa digunakan ( atau lebih baik download di sini saja untuk menghindari kekeliruan )




<?php
//Jika File Berada di internet, di sini saya contoh buka data di gamefaqs
$lines = file('http://dw.com.com/redir?asid=0&astid=8&siteid=19&edid=107&destCat=&destURL=http%3A%2F%2Fdb.gamefaqs.com%2Fconsole%2Fxbox360%2Ffile%2Ffallout_new_vegas_b.txt');

//Jika File Berada di server
$lines2 = file('C:\filediserver.txt');

//variable untuk menghitung jumlah baris
$counter1=0;

//Masukan masing masing baris ke dalam array
foreach ($lines as $line_num => $line) {
$baris[++$counter1] = $line;
}

$counter2=0;
foreach ($lines2 as $line_num => $line) {
$baris2[++$counter2] = $line;
}

//Untuk memanggil line tertentu bisa kita panggil array-nya
echo "Baris ke-3 = " . $baris[3] .'</br>';

//Kita juga bisa memanggil secara urutan dengan for
echo "<br/>Memanggil Teks Secara Urut dengan For<br/>file di net<br/>";
for($i=1;$i<=$counter1;$i++)
{
echo "Baris ke=" . $i . "= " . $baris[$i] .'</br>';
}
echo "kembali lagi ke baris 1 => " . $baris[1] .'</br>';

echo '<br/>file di server<br/>';
for($i=1;$i<=$counter2;$i++)
{
echo "Baris ke=" . $i . "= " . $baris2[$i] .'</br>';
}
echo "kembali lagi ke baris 1 => " . $baris2[1] .'</br>';
?>

Ok itu saja semoga membantu.

Tidak ada komentar: