fread

(PHP 4, PHP 5, PHP 7)

fread锟斤拷取锟侥硷拷锟斤拷锟缴帮拷全锟斤拷锟节讹拷锟斤拷锟斤拷锟侥硷拷锟斤拷

说锟斤拷

fread ( resource $handle , int $length ) : string

fread() 锟斤拷锟侥硷拷指锟斤拷 handle 锟斤拷取锟斤拷锟� length 锟斤拷锟街节★拷 锟矫猴拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟铰硷拷锟斤拷锟斤拷锟绞蓖V癸拷锟饺★拷募锟斤拷锟�

  • 锟斤拷取锟斤拷 length 锟斤拷锟街斤拷
  • 锟斤拷锟斤拷锟斤拷锟侥硷拷末尾锟斤拷EOF锟斤拷
  • a packet becomes available or the socket timeout occurs (for network streams)
  • if the stream is read buffered and it does not represent a plain file, at most one read of up to a number of bytes equal to the chunk size (usually 8192) is made; depending on the previously buffered data, the size of the returned data may be larger than the chunk size.

锟斤拷锟斤拷

handle

锟侥硷拷系统指锟诫,锟角碉拷锟酵碉拷锟斤拷 fopen() 锟斤拷锟斤拷锟斤拷 resource(锟斤拷源)锟斤拷

length

锟斤拷锟斤拷取 length 锟斤拷锟街节★拷

锟斤拷锟斤拷值

锟斤拷锟斤拷锟斤拷锟斤拷取锟斤拷锟街凤拷锟斤拷锟斤拷 锟斤拷锟斤拷锟斤拷失锟斤拷时锟斤拷锟斤拷 FALSE锟斤拷

锟斤拷锟斤拷

Example #1 一锟斤拷锟津单碉拷 fread() 锟斤拷锟斤拷

<?php
// get contents of a file into a string
$filename "/usr/local/something.txt";
$handle fopen($filename"r");
$contents fread($handlefilesize($filename));
fclose($handle);
?>

Example #2 Binary fread() example

Warning

锟斤拷锟斤拷锟街讹拷锟斤拷锟斤拷锟侥硷拷锟斤拷锟侥憋拷锟侥硷拷锟斤拷系统锟较o拷锟斤拷 Windows锟斤拷锟斤拷锟侥硷拷时锟斤拷fopen() 锟斤拷锟斤拷锟斤拷 mode 锟斤拷锟斤拷要锟斤拷锟斤拷 'b'锟斤拷

<?php
$filename 
"c:\\files\\somepic.gif";
$handle fopen($filename"rb");
$contents fread($handlefilesize($filename));
fclose($handle);
?>

Example #3 Remote fread() examples

Warning

锟斤拷锟斤拷锟轿何诧拷锟斤拷锟斤拷通锟斤拷锟斤拷锟侥硷拷锟斤拷取时锟斤拷锟斤拷锟斤拷锟节讹拷取锟斤拷远锟斤拷锟侥硷拷锟斤拷 popen() 锟皆硷拷 fsockopen() 锟斤拷锟截碉拷锟斤拷时锟斤拷锟斤拷取锟斤拷锟斤拷一锟斤拷锟斤拷锟斤拷锟斤拷之锟斤拷停止锟斤拷锟斤拷锟斤拷味锟斤拷应锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷示锟斤拷锟斤拷锟斤拷锟秸硷拷锟斤拷锟斤拷锟较诧拷锟缴达拷椤�

<?php
// 锟斤拷 PHP 5 锟斤拷锟斤拷锟竭版本
$handle fopen("http://www.example.com/""rb");
$contents stream_get_contents($handle);
fclose($handle);
?>
<?php
$handle 
fopen("http://www.example.com/""rb");
$contents '';
while (!
feof($handle)) {
  
$contents .= fread($handle8192);
}
fclose($handle);
?>

注锟斤拷

Note:

锟斤拷锟街伙拷锟斤拷虢伙拷锟斤拷募锟斤拷锟斤拷锟斤拷荻锟斤拷氲揭伙拷锟斤拷址锟斤拷锟斤拷校锟斤拷锟� file_get_contents()锟斤拷锟斤拷锟斤拷锟斤拷锟杰憋拷锟斤拷锟斤拷拇锟斤拷锟矫得多。

Note:

Note that fread() reads from the current position of the file pointer. Use ftell() to find the current position of the pointer and rewind() to rewind the pointer position.

锟轿硷拷

  • fwrite() - 写锟斤拷锟侥硷拷锟斤拷锟缴帮拷全锟斤拷锟节讹拷锟斤拷锟斤拷锟侥硷拷锟斤拷
  • fopen() - 锟斤拷锟侥硷拷锟斤拷锟斤拷 URL
  • fsockopen() - 锟斤拷一锟斤拷锟斤拷锟斤拷锟斤拷锟接伙拷锟斤拷一锟斤拷Unix锟阶斤拷锟斤拷锟斤拷锟斤拷
  • popen() - 锟津开斤拷锟斤拷锟侥硷拷指锟斤拷
  • fgets() - 锟斤拷锟侥硷拷指锟斤拷锟叫讹拷取一锟斤拷
  • fgetss() - 锟斤拷锟侥硷拷指锟斤拷锟叫讹拷取一锟叫诧拷锟斤拷锟剿碉拷 HTML 锟斤拷锟�
  • fscanf() - 锟斤拷锟侥硷拷锟叫革拷式锟斤拷锟斤拷锟斤拷
  • file() - 锟斤拷锟斤拷锟斤拷锟侥硷拷锟斤拷锟斤拷一锟斤拷锟斤拷锟斤拷锟斤拷
  • fpassthru() - 锟斤拷锟斤拷募锟街革拷氪︼拷锟斤拷锟斤拷锟绞o拷锟斤拷锟斤拷锟�
  • ftell() - 锟斤拷锟斤拷锟侥硷拷指锟斤拷锟�/写锟斤拷位锟斤拷
  • rewind() - 锟斤拷锟斤拷锟侥硷拷指锟斤拷锟轿伙拷锟�