<?php
$file=file('link.txt');
$max=count($file)-1;
for($i=0;$i<4;$i++){
    $index=mt_rand(0,$max);
    echo "".str_replace("\n",'',$file["$index"])."-";}
?>这段代码 不能去除回车,,显示还是换行的

解决方案 »

  1.   

    <?php
    $file=file('link.txt');
    $max=count($file)-1;
    for($i=0;$i<4;$i++){
      $index=mt_rand(0,$max);
      echo "".str_replace("\n",'',str_replace("\r\n","\n",$file["$index"]))."-";}
    ?>
      

  2.   

    \s/[code=PHP]<?php
    $file=file('link.txt');
    $max=count($file)-1;
    for($i=0;$i<4;$i++){
        $index=mt_rand(0,$max);
        echo "".preg_replace("/\s/",'',$file["$index"]).",";
        
    }
    ?> 这个也刻意 呵呵[/code]
      

  3.   

    \s会把空格也干掉,尽量\r\n和\n吧,其实确定了系统就可以针对性处理了,windows是\r\n,linux是\n
      

  4.   

    ie 是  \r\n
    firefox 是 \n
      

  5.   

    试一下 str_replace( PHP_EOL, ...
    PHP_EOL是换行常量,会自动适应不同的OS系统sorry,我现在没有php环境测试,你测试完也反馈一下
      

  6.   

    echo "".str_replace(PHP_EOL,'',$file["$index"])."-";}
      

  7.   

    $max=count($file)-1;
     这句话是什么意思
      

  8.   

    如果纯粹已解决你这个问题的角度看,用trim()可能比str_replace更好
      

  9.   


    str_replace(array("\n","\r\n"),array('',''),$file["$index"])).'-')