0

这是我想做的

我正在使用 php explode 函数试图限制它在定义条件后打印的字符

{ 
      $result=http://php.net
              new line characters i don't want to print
       $links =explode("://",$result);
          $nows=$links[1];
            echo $nows;
}

如您所见,上面的代码将打印

          php.net
          new line characters i don't want to print

但是我想在之后停止打印

php.net
4

3 回答 3

0

您可以用任何内容替换换行符:

$nows = str_replace("\n", "", $links[1]);
$nows = str_replace("\r", "", $nows);

echo $nows;

如果您只想要第一行打印的内容,请尝试以下操作:

$result = "php.net
           and some other text";

$nows = reset(explode("\n", str_replace("\r\n", "\n", $result)));
于 2013-08-04T18:45:01.403 回答
0

如果您要关注的部分始终位于第一行:

      $result="http://php.net
              new line characters i don't want to print";

       $links = explode("\n",$result);
/*
$links[0] ->http://php.net
$links[1] ->new line characters i don't want to print
*/
       $links =explode("://",$links[0]);
          $nows=$links[1];
            echo $nows;
/*
php.net
*/

无论如何,请考虑提供有关您的案例的更多详细信息,以便提供更好的方法。例如,也许是正则表达式?

于 2013-08-04T18:45:51.013 回答
0

尝试

$nows = trim( $links[1] );

TRIM() 将删除换行符等

手册页

编辑:现在我们有了你所说的实际情况:-

$result=http://php.net</br>nameserver:ns1</br>nameserver:ns2.

尝试

$t = explode( '</br>', $result );
$t1 = explode ( '://', $t[0] );
echo $t1[1];

请注意,如果是您在其他地方创建此字符串</br>不是有效的 html 标记,它应该是,<br>或者如果您使用 XHTML,它应该是<br />.

于 2013-08-04T18:29:43.533 回答