Rumah pembangunan bahagian belakang tutorial php 关于PHP使用fread读取文件总是会多一个空字符的有关问题

关于PHP使用fread读取文件总是会多一个空字符的有关问题

Jun 13, 2016 pm 01:26 PM
filepath filesize fread

关于PHP使用fread读取文件总是会多一个空字符的问题
代码如下:

PHP code

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<!--

 

Code highlighting produced by Actipro CodeHighlighter (freeware)

http://www.CodeHighlighter.com/

 

-->

$fileSize = filesize($filePath);

$handle = fopen($filePath, "rb");

 

 

while (!feof($handle)) {

        var_dump(fread($handle, $fileSize));

        //会多输出一次空字符

}

Salin selepas log masuk



求教,谢谢!

------解决方案--------------------
fread($handle, $fileSize)
文件中正好有 $fileSize 字节的内容,读取顺利,因此程序并没有检测到文件已到底。那么就会执行第二次循环,而此时指针位于最后一位,再没有什么可读的了,因此系统才将文件指针设为触底,这样feof()才会返回true。php操作文件系统和C几乎没什么区别,这方面有关于C的feof()有很详细的讲解
------解决方案--------------------
其实我也并没有说到点子上.至于解决方法,可以对 $fileSize+1.或者你完全可以不用循环 fread($handle, filesize ($filename)); 即可读取全部文件内容。
------解决方案--------------------
trim() 一下?
------解决方案--------------------
如果文件不大,就全读到数组,去掉最后一个吧。如果文件较大,另想其法了,不过没有发现多了这个会影响什么呀。真的影响了,想去掉应该也不是什么难事。
------解决方案--------------------
因为你是WINDOWS平台,文件是文本打开存储的内容,末尾会有一个特殊字节标识文件结束,你用rb打开自然就可以读到最后那个特殊字节了。

用r打开,fgets读吧。
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Amaran PHP: filesize() [function.filesize]: penyelesaian stat gagal Amaran PHP: filesize() [function.filesize]: penyelesaian stat gagal Jun 22, 2023 pm 11:54 PM

Apabila membangunkan projek PHP, kami sering menghadapi masalah berkaitan dengan operasi fail Salah satu masalah yang sering berlaku ialah gesaan ralat "PHPWarning: filesize()[function.filesize]:statfailed". Mesej ralat ini sering membuat orang keliru dan sukar untuk mencari penyelesaian Artikel ini akan memperkenalkan punca dan penyelesaian masalah ini, dengan harapan dapat membantu semua orang. Punca masalah adalah dalam PHP, saiz fail

Apa yang perlu dilakukan jika php+fread() bercelaru Apa yang perlu dilakukan jika php+fread() bercelaru Jan 18, 2023 am 10:21 AM

Kod bercelaru dalam php+fread() adalah kerana pengekodan halaman output tidak konsisten dengan pengekodan fail baca Penyelesaian: 1. Buka fail PHP yang sepadan 2. Baca fail melalui fungsi fread; Melalui kaedah "iconv('gbk' , 'utf-8', $data)" untuk mengubah kod kandungan yang dibaca.

Bagaimana untuk menyelesaikan ralat 'undefined: filepath.Abs' dalam golang? Bagaimana untuk menyelesaikan ralat 'undefined: filepath.Abs' dalam golang? Jun 24, 2023 pm 04:37 PM

Dalam golang, filepath.Abs ​​​​adalah perpustakaan yang sangat biasa digunakan. Fungsinya adalah untuk mendapatkan laluan mutlak laluan relatif. Walau bagaimanapun, dalam beberapa kes, kami akan mendapati bahawa kami akan menghadapi ralat "undefined: filepath.Abs" apabila menggunakan filepath.Abs, yang bermaksud bahawa kami tidak memperkenalkan pustaka laluan fail dengan betul atau menulis sintaks yang salah. Artikel ini menerangkan cara menyelesaikan ralat ini. Pertama, kita perlu faham

fungsi fread() dalam PHP fungsi fread() dalam PHP Sep 07, 2023 pm 11:57 PM

Fungsi fread() membaca data daripada fail terbuka. Fungsi fread() berhenti pada penghujung fail atau apabila ia mencapai panjang yang ditentukan. Mengembalikan rentetan baca pada kejayaan. Mengembalikan FALSE apabila gagal. Sintaks fread(file_pointer,length) Parameter file_pointer−Sumber penuding sistem fail yang dibuat menggunakan fopen(). Diperlukan. panjang−Bilangan maksimum bait untuk dibaca. Diperlukan. Nilai Pulangan Jika berjaya, fungsi fread() mengembalikan rentetan baca. Apabila gagal, mengembalikan FALSE. Katakan kita mempunyai fail yang dipanggil "one.txt" di mana

Pengenalan fungsi PHP: fungsi is_file(). Pengenalan fungsi PHP: fungsi is_file(). Nov 04, 2023 am 09:11 AM

Pengenalan fungsi PHP: fungsi is_file() Dalam pengaturcaraan PHP, fungsi is_file() ialah fungsi yang sangat berguna. Ia digunakan untuk menentukan sama ada laluan atau fail wujud dan merupakan fail biasa. Dalam artikel ini, kami akan memperkenalkan cara menggunakan fungsi is_file() dan menyediakan beberapa contoh kod khusus. Mula-mula, mari kita lihat sintaks fungsi is_file(): boolis_file(string$filename)is_

Bagaimana untuk menyelesaikan ralat 'undefined: filepath.Glob' dalam golang? Bagaimana untuk menyelesaikan ralat 'undefined: filepath.Glob' dalam golang? Jun 24, 2023 pm 04:00 PM

Bahasa Go ialah bahasa pengaturcaraan ringan yang digunakan secara meluas untuk membina perkhidmatan rangkaian berprestasi tinggi. Dalam pembangunan aplikasi Go, kita biasanya perlu menggunakan operasi laluan fail. Dalam bahasa Go, operasi laluan fail disokong oleh pakej laluan fail yang disediakan oleh perpustakaan standard. Pakej filepath menyediakan beberapa fungsi dan pemalar untuk mengendalikan laluan fail. Salah satu fungsi ini ialah Glob(), yang mencari laluan ke fail yang sepadan dengan corak. Walau bagaimanapun, apabila menggunakan bahasa Go, anda mungkin menghadapi "undefine

Pengenalan fungsi PHP—fread(): Baca kandungan dengan panjang tertentu daripada fail Pengenalan fungsi PHP—fread(): Baca kandungan dengan panjang tertentu daripada fail Jul 26, 2023 pm 09:29 PM

Pengenalan kepada fungsi PHP—fread(): Baca kandungan dengan panjang tertentu daripada fail PHP ialah bahasa skrip yang digunakan secara meluas untuk membangunkan aplikasi web. Dalam PHP, terdapat banyak fungsi terbina dalam untuk memproses fail, salah satunya ialah fungsi fread(). Fungsi fread() membolehkan kita membaca panjang kandungan tertentu daripada fail terbuka. Sintaks: stringfread(resource$handle,int$length) Perihalan parameter: $h

Pengenalan fungsi PHP: fungsi filesize(). Pengenalan fungsi PHP: fungsi filesize(). Nov 04, 2023 pm 02:18 PM

Pengenalan fungsi PHP: gambaran keseluruhan fungsi filesize(): Dalam pembangunan PHP, kita selalunya perlu mendapatkan maklumat saiz fail, dan PHP menyediakan fungsi yang mudah untuk mencapai tujuan ini - fungsi filesize(). Fungsi filesize() digunakan untuk mendapatkan saiz fail yang ditentukan, dan nilai pulangan ialah saiz fail (dalam bait). Artikel ini akan memperkenalkan penggunaan fungsi filesize() secara terperinci dan memberikan contoh kod tertentu. Penggunaan: Cara menggunakan fungsi filesize().

See all articles