如何计算一个非常大的字符串中的新行?

rsk*_*k82 44 php string count

问题减少到计算\n字符,所以有一个函数可以在一个巨大的字符串上执行它,因为explode()浪费了太多的内存.

Geo*_*ins 88

substr_count应该做的伎俩:

substr_count( $your_string, "\n" );
Run Code Online (Sandbox Code Playgroud)

  • 请注意,需要双引号```````````''''''''''''''''`````````````````````````````````````````````````````````````````````````` (3认同)
  • 关于使用PHP_EOL的想法?我一直在使用常数,并且好奇我是否可以使用\n,正如您所概述的那样.谢谢你的想法! (2认同)

Car*_*oso 7

您可以使用PHP的substr_count()功能:http://www.php.net/manual/en/function.substr-count.php

substr_count($myString, "\n");

它会给出一个包含出现次数的整数.


Hoà*_*gtt 5

我认为substr_count($ your_string,“ \ n”); 应该:

$numLine = substr_count( $your_string, "\n" ) +1;
Run Code Online (Sandbox Code Playgroud)

但是我用这个:

$numLine = count(explode("\n",$your_string));
Run Code Online (Sandbox Code Playgroud)

它总是返回正确的结果