PHP试图计算段落之间的空格

PHP试图计算段落之间的空格,php,html,line-breaks,spaces,Php,Html,Line Breaks,Spaces,我一直在尝试编写一个PHP代码,用于计算存储在.txt文件中的文本行数 在某种程度上,当它计算总行数和段落之间的总空格数时,会在脚本末尾回显每个值以及一个(总行数总空格)值。很遗憾,我无法让它计算空格数。我当前的代码如下所示: <?php $file="text.txt"; $spaceCount = 0; $lineCount = 0; $plainCount = $lineCount- $spaceCount; $handle = fopen($file, "r"); while(

我一直在尝试编写一个PHP代码,用于计算存储在.txt文件中的文本行数 在某种程度上,当它计算总行数和段落之间的总空格数时,会在脚本末尾回显每个值以及一个(总行数总空格)值。很遗憾,我无法让它计算空格数。我当前的代码如下所示:

<?php

$file="text.txt";
$spaceCount = 0;
$lineCount = 0;
$plainCount = $lineCount- $spaceCount;
$handle = fopen($file, "r");

while(!feof($handle))
{
  $line = fgets($handle);
 if(ctype_print($line)) 
 {
  $lineCount++;
 }
 else
 {
  $spaceCount++;
 }
}

fclose($handle);

?>

<html>
<body>
<?php

echo "<table border=\"1\">";
echo "<tr>";
echo "<td> Total lines ".$lineCount."</td>";
echo "</tr>";
echo "<tr>";
echo "<td> Total Spaces ".$spaceCount." </td>";
echo "</tr>";
echo "<tr>";
echo "<td> Plain Text Count ".$plainCount."</td>";
echo "</tr>";
?>

</body>
</html>

因此,它的书写方式不会有任何模式,有没有正确的方法?

您可以使用preg\u match\u all函数来计算空格和其他匹配项,其中一些是:

preg_match_all("/(\s)(\n)/", $string, $matches);

$spaces = count($matches[0]);
$lines = count($matches[1]);

给定文件的预期计数是多少?
preg_match_all("/(\s)(\n)/", $string, $matches);

$spaces = count($matches[0]);
$lines = count($matches[1]);