Php memuat array dari file

Di Bab 2, "Menyimpan dan Mengambil Data", kami menyimpan pesanan pelanggan dalam sebuah file. Setiap baris dalam file terlihat seperti

15:42, 20th April 4 tires 1 oil 
6 spark plugs $434.00 
22 Short St, Smalltown

Untuk memproses atau memenuhi pesanan ini, kami dapat memuatnya kembali ke dalam array. Daftar 3. 2 menampilkan file pesanan saat ini

Daftar 3. 2 pesanan tampilan. php—Menggunakan PHP untuk Menampilkan Pesanan Bob

No orders pending. 
    Please try again later.';
}
for ($i=0; $i';
}
?>
_

Skrip ini menghasilkan output yang hampir persis sama dengan Listing 2. 2 di bab sebelumnya, yang ditunjukkan pada Gambar 2. 4. Kali ini, kami menggunakan fungsi file() yang memuat seluruh file ke dalam array. Setiap baris dalam file menjadi salah satu elemen dari array

Kode ini juga menggunakan fungsi count() untuk melihat berapa banyak elemen dalam sebuah array

Selain itu, kita dapat memuat setiap bagian dari baris pesanan ke dalam elemen larik terpisah untuk memproses bagian secara terpisah atau memformatnya dengan lebih menarik. Daftar 3. 3 melakukan hal itu

Daftar 3. 3 pesanan lihat2. php—Menggunakan PHP untuk Memisahkan, Memformat, dan Menampilkan Perintah untuk Bob



 Bob's Auto Parts - Customer Orders


Bob's Auto Parts

Customer Orders

No orders pending. Please try again later.'; } echo "\n"; echo ''; for ($i=0; $i"; } echo "Order Date Tires Oil Spark Plugs Total Address $line[0] $line[1] $line[2] $line[3] $line[4] $line[5] "; ?>

Kode di Listing 3. 3 memuat seluruh file ke dalam array tetapi tidak seperti contoh di Listing 3. 2, di sini kita menggunakan fungsi burst() untuk memisahkan setiap baris, sehingga kita dapat menerapkan beberapa pemrosesan dan pemformatan sebelum mencetak

Output dari skrip ini ditunjukkan pada Gambar 3. 6

Fungsi meledak memiliki prototipe berikut

array explode(string separator, string string [, int limit])

Php memuat array dari file
Gambar 3. 6 Setelah membagi catatan pesanan dengan meledak, kita dapat menempatkan setiap bagian dari pesanan di sel tabel yang berbeda untuk hasil yang terlihat lebih baik

Di bab sebelumnya, kami menggunakan karakter tab sebagai pembatas saat menyimpan data ini, jadi di sini kami memanggil

explode( "\t", $orders[$i] )
_

Ini "meledakkan" string yang diteruskan menjadi beberapa bagian. Setiap karakter tab menjadi jeda antara dua elemen. Misalnya, string

"15:42, 20th April\t4 tires\t1 oil\t6 spark plugs\t$434.00\t
22 Short St, Smalltown"

diledakkan menjadi bagian-bagian "15. 42, 20 April", "4 ban", "1 oli", "6 busi", "$434. 00", dan "22 Short St, Smalltown"

Perhatikan bahwa parameter batas opsional dapat digunakan untuk membatasi jumlah maksimum bagian yang dikembalikan

Kami belum melakukan banyak pemrosesan di sini. Daripada mengeluarkan ban, oli, dan busi di setiap baris, kami hanya menampilkan nomor masing-masing dan memberikan baris judul pada tabel untuk menunjukkan angka yang mewakili

Ada sejumlah cara agar kita dapat mengekstraksi angka dari string ini. Di sini kami menggunakan fungsi, intval(). Seperti disebutkan di Bab 1, intval() mengonversi sebuah string menjadi integer. Konversi cukup pintar dan akan mengabaikan bagian, seperti label dalam contoh ini, yang tidak dapat diubah menjadi bilangan bulat. Kami akan membahas berbagai cara pemrosesan string di bab berikutnya

Ada opsi lain yang dapat Anda gunakan untuk menempatkan baris teks ke dalam array. Dalam teknik di bawah ini, kami menggunakan fungsi string burst() untuk membuat larik dari setiap baris teks. Inilah kodenya (ini mengasumsikan bahwa Anda telah mengikuti dari bagian sebelumnya)

$file_handle = fopen("kamus. txt", "rb");

ketika (. feof($file_handle) ) {

$line_of_text = fgets($file_handle);
$bagian = meledak('=', $line_of_text);

cetak $bagian[0]. $bagian[1]. "
";

}

fclose($file_handle);

?>

Garis yang akan diperiksa berwarna biru; . Baris pertama yang perlu diperhatikan adalah ini

$bagian = meledak( '=', $line_of_text );

Jika Anda ingat bagian string, Anda juga akan terbiasa dengan fungsi meledak. Itu membagi satu baris teks, berdasarkan apa pun yang Anda berikan untuk pemisah. Dalam kode kami, kami telah menggunakan tanda sama dengan ( = ) sebagai pemisah. Ini karena setiap baris dalam kamus. File txt terlihat seperti ini

AAS = Hidup dan tersenyum

Ketika fungsi meledak dijalankan, variabel yang disebut $parts akan menjadi sebuah larik. Dalam file teks kami hanya akan ada dua posisi dalam array, satu untuk setiap setengah dari tanda sama dengan

Kami kemudian mencetak kedua bagian dari array dengan ini

cetak $bagian[0]. $bagian[1]. "
";

Jadi $parts[0] akan menyimpan singkatan (AAS) dan $parts[1] akan menyimpan artinya

Lain kali putaran while, baris kedua akan dibaca dari file teks. Hal yang persis sama terjadi, jadi baris akan dipisah lagi, dan ditempatkan ke dalam array. Ini adalah teknik yang bagus untuk digunakan, jika Anda ingin membagi setiap baris dan melakukan sesuatu yang berbeda dengan setiap bagian dari baris

Bagaimana cara membaca file ke dalam array di PHP?

php $userfile= file_get_contents("./text. txt"); // Place each line of $userfile into array $users = explode("\n",$userfile); foreach ($users as $user) { list($name, $email) = explode(" ", $user); echo "$name/a>
"; } ?>

Bagaimana cara membaca array dari file?

Di Java, kita dapat menyimpan konten file ke dalam array baik dengan membaca file menggunakan scanner atau bufferedReader atau FileReader atau dengan menggunakan metode readAllLines.

Bagaimana cara membaca isi file di PHP?

file_get_contents() membaca file menjadi string. Fungsi ini adalah cara yang disukai untuk membaca isi file menjadi string. Ini akan menggunakan teknik pemetaan memori, jika didukung oleh server, untuk meningkatkan kinerja.

Fungsi mana yang membaca seluruh file ke dalam array?

* file_get_contents — Membaca seluruh file menjadi string. * file — Membaca seluruh file ke dalam array. * fopen — Membuka file atau URL.