为了账号安全,请及时绑定邮箱和手机立即绑定

如何将不同行中的单词对齐为表格

如何将不同行中的单词对齐为表格

PHP
噜噜哒 2021-05-08 13:08:09
我有一个php脚本,每次运行时都会将3个单词保存到一个文本文件中,我该如何对齐这些单词以使其始终位于不同行的行中的某个点,就像表格一样,例如,第一个单词应该总是在行的开头,第二个单词应排成15列,第三个单词应排成30列。我已经研究了很长时间了,但是找不到适合我的答案。这是我的代码,用于将3个变量和一个单词保存到文件中$example1 = "example1"$example2 = "example2"$example3 = "example3"$myfile = fopen("example.txt", "a");$txt =  "\n$example1 $example2 word $example3";fwrite($myfile, $txt);fclose($myfile);每次我运行这个php时,我的变量的长度都不一定是相同的长度(它们永远不会超过15个字符,所以我认为这是每列之间的良好距离),因此它们看起来可能像这样...$example1 = "example123"$example2 = "example34"$example3 = "exam"目前,在我用这两个示例运行两次后,文本文件中的结果看起来像这样example1 example2 word example3example123 example34 word exam但我希望它看起来像这样example1       example2       word example3example123     example34      word exam
查看完整描述

2 回答

?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

您可以str_pad在将行写入文件之前,将前两个字符串分别填充为15个字符。


$example1 = str_pad($example1, 15);

$example2 = str_pad($example2, 15);


$myfile = fopen("example.txt", "a");

$txt =  "\n$example1 $example2 word $example3";


fwrite($myfile, $txt);

fclose($myfile);

str_pad 默认情况下,将在字符串的右边填充空格。


带有注释的部分:

如果您要在程序的其他位置读取此数据文件,则我真的建议您使用诸如CSV之类的定界格式,而不是像这样的固定宽度格式。编写代码以读取这种格式更简单,并且如果文件的重点是存储程序将读取的数据,那么我认为这比人类可读性更重要。


查看完整回答
反对 回复 2021-05-14
?
呼啦一阵风

TA贡献1802条经验 获得超6个赞

一个有趣的问题,那么如果长单词的一些小变化困扰您,它会确认已读取整个文件并定义了最长的通话,否则,您应该执行以下操作:


$example1 = "example1"

$example2 = "example2"

$example3 = "example3"


$myfile = fopen("example.txt", "a");

$txt =  "\n$example1\t$example2\tword $example3";

fwrite($myfile, $txt);

fclose($myfile);

注意单词之间的\ t,这会打印制表符


我再说一遍,对于那些具有不同字符的年份的单词,只有通过读取文件并依次确定包含的最长的单词才能做到。一旦找到,您需要添加所需数量的标签,以移至下一个缩进标签


查看完整回答
反对 回复 2021-05-14
  • 2 回答
  • 0 关注
  • 179 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信