由于记录是由规则符号分隔的,因此我们采用  $msg="ID|||用户名|||密码";
  $array=explode("|||",$msg)
    获得数据
   $array[0]=>ID
   $array[1]=>用户名
   $array[2]=>密码  同等功能的函数还有   split();
   spliti();

解决方案 »

  1.   

    统计有多少行,然后使用for循环,当然这个和你保存文本的方法有关的
      

  2.   

    使用file()将数据装入数据是以一行为一个元素存在数组中例如  $ary=file("user.dat");  则 $ary数组中,每一个元素为user.dat中一行数据(\r\n)
      

  3.   

    $filename = "users.txt";
    $fp = fopen($filename,"r");
    while($buffer = fgets($fp,2048)) {
      list($id,$username,$passwrd) = explode("|||",eregi_replace("\r?\n","",$buffer));
      echo "ID:$id User:$username Pass:$passwrd<br>";
    }
    fclose($fp);
      

  4.   

    唠叨,照你这样file要有何用,弄麻烦了吧
      

  5.   

    我来混分
    去www.google.com里面找手册
      

  6.   

    $userData = "user.txt";
    $user=file($userData);
    $userNum = count(file($userData));
    for ($i=0;$i<$userNum;$i++)
    {
      echo user[$i].'<br>';
    }
    //这些代码就足够了;
      

  7.   

    to sports98((︶︵︶)) 
    file函数将吧文件全部读入到内存,简单是够简单的。但是...
      

  8.   

    xuzuning(唠叨) :考虑的周到,不过也不能一概不用.偶尔用一下,呵呵~~
      

  9.   

    to 唠叨 他的要求为
    1,遍历各条(逐行,不限方向)记录虽然说file是直接将文件装入内存,不过我们现在的内存基本上都是以100MB为一个基础单位了
    而且使用PHP操作文件,我们很难想象我们使用个10MB左右的文件来操作吧我个人意思就是,有的数据(比如说文本论坛),我们多半会在文件生成到5-10MB的时候会把文件下下来分割一下(将老记录分割出来,当然了很可能论坛就已经有了这个功能)
    (同样的页面读取数据形成  1个月前数据 2个月前数据)
    说不定,人家还采用,一天一个数据文件保存记录(有便按时间排序~)
    而且,文件装入内存后运行的速度是我们都晓得的,(能使用文本论坛的我想访问量不会很大的,能同时20-50人在线已经很不错了,因此我不考虑并发的时候同时调用导致系统开销过大)