Bagaimana untuk menyimpan semua data fail ke dalam rentetan dalam php

青灯夜游
Lepaskan: 2023-03-11 22:26:01
asal
3670 orang telah melayarinya

Dalam artikel sebelum ini, kami memperkenalkan kaedah membaca keseluruhan fail pada satu masa dan mendapatkan semua data Jika anda berminat, anda boleh klik pada pautan untuk melihat "Bagaimana untuk mendapatkan semua data fail pada satu masa dalam operasi fail PHP 》. Hari ini kami akan memperkenalkan kaedah lain untuk membaca keseluruhan fail pada satu masa Anda boleh merujuknya jika perlu.

Kaedah yang saya akan perkenalkan kepada anda hari ini bukan sahaja boleh membaca keseluruhan fail pada satu masa, tetapi juga menyimpan kandungan fail yang dibaca ke dalam rentetan Bukankah ia menakjubkan? Ini memerlukan penggunaan fungsi terbina dalam PHP file_get_contents().

Mari kita ambil fail "test.txt" sebagai contoh Kandungan dalam fail ialah:

Bagaimana untuk menyimpan semua data fail ke dalam rentetan dalam php

Mari kita lihat dahulu cara menggunakan. fungsi file_get_contents() Baca fail dan simpan kandungan ke dalam rentetan.

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$file = &#39;test.txt&#39;;
$filestr = file_get_contents($file);
if($filestr){
  echo $filestr;
}else{
  echo &#39;读取失败!&#39;;
}
?>
Salin selepas log masuk

Hasil keluaran:

Bagaimana untuk menyimpan semua data fail ke dalam rentetan dalam php

Ia boleh dilihat bahawa tidak perlu membuka atau menutup operasi fail, gunakan " file_get_contents($file)" kenyataan secara langsung Anda boleh membaca keseluruhan fail sekali gus, yang hampir sama dengan fungsi readfile() yang diperkenalkan sebelum ini, tetapi ia masih berbeza: fungsi file_get_contents() akan menyimpan data baca dalam rentetan, dan readfile () fungsi disimpan dalam penimbal keluaran.

Oleh itu, fungsi readfile() boleh mengeluarkan tanpa memerlukan penyataan output seperti gema dan cetakan, hanya "readfile($file);" manakala fungsi file_get_contents() memerlukan penggunaan penyataan output untuk mengeluarkan bacaan kandungan, " echo file_get_contents($file)".

Mari kita lihat lebih dekat penggunaan fungsi file_get_contents() :

file_get_contents($filename,$include_path,$context,$offset,$max_length)Fungsi ini hanya mempunyai satu parameter yang diperlukan $filename (fail yang akan dibaca boleh menjadi fail nama atau laluan fail), tetapi terdapat 4 parameter yang ditinggalkan: $include_path (nilai lalai SALAH), $context (persekitaran pemegang fail, nilai boleh NULL), $offset (kedudukan untuk mula membaca), $max_length ( nombor daripada bait dibaca).

Antaranya, parameter $offset tidak boleh digunakan untuk fail jauh jika parameter $max_length ditinggalkan, keseluruhan kandungan fail akan dibaca secara lalai seperti dalam contoh di atas.

Mari kita lihat pada parameter $offset dan $max_length.

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$file = &#39;test.txt&#39;;
$filestr1 = file_get_contents($file,FALSE,NULL,3);
echo $filestr1;
$filestr2 = file_get_contents($file,FALSE,NULL,0,15);
echo "<br>".$filestr2;
?>
Salin selepas log masuk

Hasil keluaran:

Bagaimana untuk menyimpan semua data fail ke dalam rentetan dalam php

Dapat dilihat bahawa parameter $max_length ditetapkan kepada 15, tetapi hanya 7 aksara yang diperolehi. Mengapa ini?

Itu kerana: dalam fungsi file_get_contents(), aksara Cina yang dikodkan UTF-8 menduduki tiga aksara panjangnya. Dan jika panjang pemerolehan yang ditetapkan tidak mencukupi, aksara Cina yang tidak dapat diperoleh akan dipaparkan sebagai simbol .

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$file = &#39;test.txt&#39;;
$filestr1 = file_get_contents($file,FALSE,NULL,6);
echo $filestr1;
$filestr2 = file_get_contents($file,FALSE,NULL,0,16);
echo "<br>".$filestr2;
$filestr3 = file_get_contents($file,FALSE,NULL,0,18);
echo "<br>".$filestr3;
?>
Salin selepas log masuk

Hasil keluaran:

Bagaimana untuk menyimpan semua data fail ke dalam rentetan dalam php

Itu sahaja jika anda ingin tahu perkara lain, anda boleh klik ini. → →tutorial video php

Akhir sekali, saya mengesyorkan anda membaca kursus klasik "Pemprosesan Rentetan PHP (Edisi Sutra Jantung Gadis Jade) ", ianya percuma~ datang dan belajar!

Atas ialah kandungan terperinci Bagaimana untuk menyimpan semua data fail ke dalam rentetan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan