首頁 > 後端開發 > php教程 > php的函数file()的用法,该如何解决

php的函数file()的用法,该如何解决

WBOY
發布: 2016-06-13 10:13:46
原創
870 人瀏覽過

php的函数file()的用法
  $fp=fopen("交响乐.txt","rb+");
  fseek($fp,0);
  while($fp){
  echo fgets($fp);echo "
";
  }
  echo "


";
   
  $readarray=file("经典时尚语录.txt");
  if(!$readarray){
  echo "用file函数读取文件失败
";
  }
  else file_put_contents("语录.txt",$readarray);  
  echo "
";
  fclose($fp);
?>
上述代码中为什么不能实现将同一目录下的文件"经典时尚语录.txt"的数据写到文件"语录.txt"(新创建的)中去?

我不解也?请各位指点,不胜感激!

------解决方案--------------------
$fp=fopen("交响乐.txt","rb+");
fseek($fp,0);
while( feof($fp) ){ 
echo fgets($fp);echo "
";
}

fgets()只取文件中 一行 内容。取哪行,由文件内部指针确定。fgets每取一行内容,指针向前一行。
feof()用于检测指针是否已经到底,即文件最末尾。
而你用$fp,它的值并不会变化,因此会陷入死循环

===========
$readarray=file("经典时尚语录.txt");
if(!$readarray){
echo "用file函数读取文件失败
";
}
else file_put_contents("语录.txt",$readarray);
echo "
";
fclose($fp);

file()函数的返回值是数组类型。而file_put_contents()接受的类型是字符串,因此,写入的的$readarray会被强制类型转换为字符串类型,也就是'Array'
参考:http://www.php.net/manual/zh/ref.filesystem.php
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板