我想这个流水号自增,格式为:0000000001,0000000002... 0000000010请问要怎么做

解决方案 »

  1.   

    这样写$fn = '流水号.txt'; //保存流水号的文件名,只要将这个文件删去流水号就重新开始
    $n = @file_get_contents($fn) or $n = 0;
    file_put_contents($fn, $n = sprintf("%010d", ++$n));
    echo $n;
      

  2.   

    在数据库中默认自增还是在PHP脚本中循环自增哦?
      

  3.   

    要是在脚本里实现自增可以如下:$x='0000000101';//假设的当前流水号
    echo $x.'<br>';
    $x=sprintf('%010s',intval($x)+1);//流水号递增
    echo $x;
    _________________________
    执行结果:
    0000000101
    0000000102 
      

  4.   

    //自动编号,带断号检测补号功能 20090212 add by wangquan 
    function createBH(){ 
      $contact_no = date("Y").date("m").date("d"); //编号规则:年2位月2位日2位,后面是自动编号流水,带断号检测补号
      $sql = "select contact_no from cx_contact where contact_no like '".$contact_no."%' order by contact_no asc"; 
      $sql1 = "select contact_no from cx_contact where contact_no like '".$contact_no."%' order by contact_no desc"; 
      $this->db->query($sql1); 
      if($this->db->next_record()){ 
    $num=substr($this->db->Record["contact_no"],-3); //此处的数字3表示编号位数(001  002  003 .... ) 
    //echo 'num='.$num; 
    if($num <> $this->db->num_rows){  
    $num = 0; 
    $this->db->query($sql); 
    while($this->db->next_record()){ 
    $tnum = substr($this->db->Record["contact_no"],-3); 
    //echo 'tnum='.$tnum; 
    if($tnum - $num ==1) 
    $num = $tnum; 
    else 
    break; 
    //echo 'num='.$num; 


      } 
      else 
    $num=0; 
      //echo 'num='.$num; 
      $contact_no = $contact_no.sprintf("%'03s", $num+1); 
      return $contact_no; 

    调用这个函数得到的$contact_no就是你要的编号