PHP随机文本文件并使用File_Put_Contents重写

时间:2017-11-11 02:29:37

标签: php shuffle file-put-contents

我已经尝试了两天从文本文件列表创建一个数组,将其洗牌,然后使用file_put_contents重写文本文件。

我成功完成了这项工作但是当我不止一次运行脚本时,它会在每个项目之间创建多个随机空格。

我尝试了许多不同的想法但却没有快乐。

以下是我的代码。

    <?php

         // create array from text file
         $array = file('list.txt');

         // shuffle the array
         shuffle ($array);

         // overwrite original with new shuffled text file
         file_put_contents('list.txt', implode(PHP_EOL, $array));

         ?> 

1 个答案:

答案 0 :(得分:0)

好像你可能有额外的回报。这些也是数组的一部分,并随机改组。如果你想删除它们,你可以这样做

 $array = array_filter(array_map('trim', $array));

数组映射trim只对数组中的每个项目运行trim(),这将有助于摆脱其中包含空格而不是严格为空的行。修剪只是从字符串的前面和后面删除任何空格,如果整行是空格,则删除所有空格,留下该行的空字符串''

数组过滤器会删除在{php} 0 '' 0 false以及其他一些内容中评估为null的所有行。

因此,通过组合它们,我们可以轻松过滤掉只包含空格或为空的任何行。

相关问题