php - 如何使用 php 将 echo 中的所有变量结果保存到 txt 文件中?
问题描述
我编写了一个生成随机标记的 php 脚本,我想将这些标记输出到 .txt 文件中。
下面是代码:
do {
$token = bin2hex(random_bytes(2));
echo("token: $token");
$myfile = fopen("output.txt", "w+") or die("Unable to open file!");
fwrite($myfile, $token);
fclose($myfile);
} while ($token != "e3b0");
它回显多个标记,直到echo = e3b0,但是当我尝试将结果写入txt文件时,它只写入“e3b0”,这是将“echo”的所有结果写入txt文件的一种方式吗?
解决方案
在我看来,最有效的方法是将所有事情都做足够的时间。这意味着我们必须循环并生成代码,但我们只需要写入文件一次,与 echo 相同。
$code = "start value";
while ($code != "e3b0"){
$arr[] = $code = bin2hex(random_bytes(2));
}
echo $str = implode("\n", $arr);
file_put_contents("output.txt", $str);
这是做所有事情的时间,以及更优化的代码。
但是,如果您在浏览器中运行它,那么它不会在屏幕上的单独行上输出它们,只会在 txt 文件中输出。但是,如果您打开源代码,它将位于不同的行上。
那是因为我没有在 implode 中使用 br 标签。
推荐阅读
- prepared-statement - 如何将 Athena 中的预准备语句与 boto3 一起使用?
- python - 未找到模块错误,但它已安装在我的环境中(jupyter)
- javascript - 使用object-fit时如何删除背景层:包含;
- r - R Markdown:如何隐藏在 RStudio 中绘制的图?
- performance - Neo4j 导入:本地数据库 vs aura 数据库
- ruby - 算法全部用 Ruby 构建
- css - 如何使用 vuejs 为 gitlab 页面的自定义域设置正确的路径?
- rundeck - 在脚本中获取服务器 URL
- reactjs - 使用 reactjs 的 Fullcalendar 资源时间轴视图 - 更改插槽颜色
- flutter - 完成购买后,我收到开发人员错误,例如响应(应用内购买)