Dalam artikel sebelum ini, saya membawakan anda "Asas ungkapan biasa yang menarik dalam PHP (ilustrasi terperinci)", yang terutamanya bercakap tentang pengetahuan asas ungkapan biasa PHP dan cara menggunakannya melalui contoh . Ketahui cara menggunakannya. Artikel ini terus mempelajari tentang sistem fail PHP. Semoga ia membantu semua orang!
Apabila kita menggunakan komputer, kita semua menggunakan komputer untuk membuka dan menutup fail, mencipta fail atau memuat naik fail. Jadi bolehkah operasi ini dilakukan dalam kod? Jika ia boleh dilakukan, bagaimana ia harus dilakukan? Sebenarnya, sangat mudah Mempelajari pemprosesan fail sebenarnya mempelajari fungsi pemprosesan fail dan menggabungkannya dengan apa yang telah anda pelajari sebelum ini. Jadi mari kita lihat seterusnya.
Membaca fail dianggap sebagai operasi yang paling biasa dalam penggunaan harian kita, jadi bagaimana untuk melaksanakannya dalam kod.
Mari perkenalkan cara menggunakan fungsi dalam PHP untuk membaca kandungan fail.
fgetc()
: Baca aksara daripada fail
Sebelum menggunakan fungsi ini untuk membaca fail, kita perlu Cipta teks terlebih dahulu fail dalam direktori (di sini kita ambil text.txt sebagai contoh). Kandungan teks adalah seperti berikut:
Seterusnya mari kita lihat, fgetc() sedang digunakan Cara menggunakannya, dan apakah hasil output:
<?php header("Content-Type: text/html;charset=utf-8"); $handle = fopen('test.txt', 'r'); $a = fgetc($handle) ; echo $a; ?>
Hasil output:
fgetc hanya boleh membaca satu aksara, Kami boleh menggunakan gelung yang disebutkan sebelum ini untuk digabungkan, dan kita boleh mendapatkan contoh berikut:
<?php header("Content-Type: text/html;charset=utf-8"); //设置字符编码 $handle = fopen('test.txt', 'r'); //打开文件 if (!$handle) { //判断文件是否打开成功 echo '文件打开失败!'; } while (false !== ($char = fgetc($handle))) { //循环读取文件内容 echo $char; } fclose($handle); //关闭文件 ?>
Hasil keluaran:
fgets()
dan fgetss()
: Baca fail baris demi baris
<?php header("Content-Type: text/html;charset=utf-8"); $handle = fopen('test.txt', 'r'); $a = fgets($handle) ; echo $a; ?>
Hasil keluaran:
Fungsi fgetss() ialah varian bagi fgets() dan juga digunakan untuk membaca baris data Semasa membaca, ia juga akan menapis teg PHP dan HTML dalam kandungan baca,
Dapat dilihat bahawa fail boleh dibaca baris demi baris melalui fgets Pada masa yang sama, seperti di atas, kita boleh menggunakan gelung untuk membaca keseluruhan fail.
Contoh adalah seperti berikut:
<?php $handle = @fopen("test.txt", "r"); if ($handle) { while (($info = fgets($handle, 1024)) !== false) { echo $info.'<br>'; } fclose($handle); } ?>
Hasil keluaran:
fread()
: Baca Dapatkan fail (sebarang panjang)
<?php $filename = "test.txt"; $handle = fopen($filename, "r"); $contents = fread($handle, '6'); echo '从文件中读取 6 个字符长度:'.$contents.'<br>'; rewind($handle); $contents = fread($handle, filesize($filename)); echo '读取全部的文件内容:'.$contents; fclose($handle); ?>
Hasil keluaran:
readfile()
: Baca semua fail
<?php $file = 'test.txt'; $info = readfile($file); ?>
Hasil keluaran:
file()
: Baca keseluruhan fail ke dalam tatasusunan
<?php $file = 'test.txt'; $arr = file($file, FILE_IGNORE_NEW_LINES); $arr2 = file($file); echo '<pre class="brush:php;toolbar:false">'; var_dump($arr); var_dump($arr2); ?>
Hasil keluaran:
file_get_contents()
: Baca fail ke dalam rentetan
Mula-mula, kami mencipta fail test.txt
Kemudian masukkan:
<?php $a = 'test.txt'; $b = file_get_contents($a); //因为每一行有一个回车即\n,我用\n来把这个字符串切割成数组 $c = explode("\n", $b); //把切割成的数组,下标赋值给$key,值赋值给$val,每次循环将$key加1。 while (list($key, $val) = each($c)) { ++$key; $val = trim($val); //用的单引号,单引号不解释变量进行了拼接而已 print 'Line' . $key .':'. $val.'<br />'; } ?>
Dengan menggabungkannya dengan ilmu yang kita pelajari sebelum ini, hasil output ialah:
Ini Ia adalah penyepaduan pengetahuan yang kami pelajari Pertama, buka fail melalui file_get_contents, dan kemudian dapatkan hasil output melalui senarai setiap pernyataan dan gelung while.
Pengetahuan lanjutan: fopen, fread, bacaan operasi fclose
Kaedah file_get_contents di atas untuk membuka fail adalah mudah dan kasar, maka apa yang berikut Beberapa
resource fopen ( string $文件名, string 模式) string fread ( resource $操作资源, int 读取长度) bool fclose ( resource $操作资源 )
Melalui fungsi di atas, kami akan menerangkan kaedah operasi biasa jenis sumber:
Sumber terbuka
Gunakan fungsi berkaitan untuk beroperasi
Tutup sumber
Fungsi fopen Fungsi fopen adalah untuk membuka fail Terdapat dua parameter utama:
Laluan untuk membuka fail
<.> Buka dalam mod baca sahaja dan halakan penuding fail ke pengepala fail . r
Buka dalam mod baca-tulis dan halakan penuding fail ke pengepala fail. r
Buka dalam mod penulisan, halakan penuding fail ke pengepala fail dan potong saiz fail kepada sifar. Jika fail itu tidak wujud, cuba buatnya w
Buka dalam mod baca-tulis, halakan penuding fail ke pengepala fail dan potong saiz fail kepada sifar. Jika fail itu tidak wujud, cuba buatnya w
Buka dalam mod penulisan dan halakan penuding fail ke hujung fail. Jika fail itu tidak wujud, cuba buatnya a
Bukanya dalam mod baca-tulis dan halakan penuding fail ke hujung fail. Jika fail itu tidak wujud, cuba buatnya a
dan bukanya untuk menulis, halakan penuding fail ke pengepala fail. Jika fail sudah wujud, panggilan fopen() gagal dan mengembalikan FALSE dan menjana mesej ralat peringkat E_WARNING. Jika fail itu tidak wujud, cuba buatnya x
Cipta dan bukanya dalam mod baca-tulis, halakan penuding fail ke pengepala fail. Jika fail sudah wujud, panggilan fopen() gagal dan mengembalikan FALSE dan menjana mesej ralat peringkat E_WARNING. Jika fail itu tidak wujud, cuba buatnyax
Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk membaca fail dalam PHP? (Ringkasan kongsi). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!