Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么我会有空行_Php_Arrays_Post - Fatal编程技术网

Php 为什么我会有空行

Php 为什么我会有空行,php,arrays,post,Php,Arrays,Post,我正在迭代一篇$\u文章,将每个项目写入一个文本文件。它是有效的,但尽管使用了strlen来避免空白行,我还是得到了一些。谁能告诉我为什么?这是我的密码: $entries = ""; $filename = "test.txt"; foreach($_POST as $value) { if( is_array( $value ) ) { foreach( $value as $subvalue ) { if (strlen($subvalue)

我正在迭代一篇$\u文章,将每个项目写入一个文本文件。它是有效的,但尽管使用了strlen来避免空白行,我还是得到了一些。谁能告诉我为什么?这是我的密码:

$entries = "";
$filename = "test.txt";
foreach($_POST as $value) {
    if( is_array( $value ) ) {
        foreach( $value as $subvalue ) {
            if (strlen($subvalue) > 5) {
                $entries .= $subvalue . PHP_EOL;
            }
        }
    }
}
file_put_contents($filename, $entries);

请为您的解决方案尝试以下代码:

$entries = "";
$filename = "test.txt";
foreach($_POST as $value) {
    if( is_array( $value ) ) {
        foreach( $value as $subvalue ) {
            if (strlen(trim($subvalue)) > 5) {
                $entries .= $subvalue . PHP_EOL;
            }
        }
    }
}
file_put_contents($filename, $entries);

请为
$\u POST
添加
var\u export
;和
trim()
删除开头和结尾的空格,如果需要的话。您得到的是空行还是只包含空格的行?在计算strlen()之前,您可能想尝试使用
trim()
?此外,如果某个
$subvalue
的末尾有一个换行符,那么您可以添加一个额外的换行符,这将导致空行。你也可以检查一下。trim()成功了,谢谢!