呵呵,捡分,你将$action++ 换到if 下面去试试

解决方案 »

  1.   

    舍弃fopen使用以下代码尝试<?php 
    $line=$_GET['line'];
    $fp=file("list.txt","r") or die ("wrong");
    for($i=0;$i<count($fp);$i++) 
    {
      if ($i>=$line)
      {
        list($pic,$bedline,$bedtype,$beddai,$bedtao,$instru)= explode('###',$fp[$i]);
      }
    }
    ?>
      

  2.   

    file()自动把文件读到数组里面
      

  3.   

    list.txt中每行有两个换行符或行长度大于1024
      

  4.   

    我设置$action=0;的目的是为了来检测我要读取的行数。
    怎么能将$action++ 换到if 下面呢。
    不过我的一行却是长度大于1024,那应该怎么解决呢。
      

  5.   

    <?php 
    $line=$_GET['line'];
    $fp=file("list.txt","r") or die ("wrong");
    for($i=1;$i<=count($fp);$i++) 
    {
      if ($i==$line)
      {
        list($pic,$bedline,$bedtype,$beddai,$bedtao,$instru)= explode('###',$fp[$i]);
      }
    }
    ?>
      

  6.   

    fgets的说明:
    length 参数从 PHP 4.2.0 起成为可选项,如果忽略,则行的长度被假定为 1024。从 PHP 4.3 开始,忽略掉 length 将继续从流中读取数据直到行结束。如果文件中的大多数行都大于 8KB,则在脚本中指定最大行的长度在利用资源上更为有效
      

  7.   

    我用file函数。好象也存在1024的限制吗。
    怎么解决啊。
      

  8.   

    试一试这个
    int readfile ( string filename [, bool use_include_path [, resource context]])