PHP 获取输出流或只是回显

标签 php

在 php 命令行应用程序中,只是回显或 printf 等一些字符串与获取 sdtout 流并写入它有什么区别,即

$stdout = fopen('php://stdout', 'w');

最佳答案

我首先想到的是输出缓冲。 echoprint 与输出缓冲机制交互,但直接写入 stdout 会绕过它。

考虑这个脚本:

<?php
$stdout = fopen('php://stdout', 'w');
ob_start();
        echo "echo output\n";
        fwrite($stdout, "FWRITTEN\n");
        echo "Also echo\n";
$out = ob_get_clean();
echo $out;

输出:

FWRITTEN
echo output
Also echo

这表明 echo 被缓冲,而 fwrite 没有。

关于PHP 获取输出流或只是回显,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12124915/

相关文章:

php - 使用php在mysql中加载批量数据时出现问题

php - 检查索引是否存在 Elasticsearch

php - 我需要帮助完成这个 3 级动态下拉列表

php - 意外的标识符 预期结束 ']' 或数组元素后的 ','

php - 如何修复 javascript 和 php mysql 中不同页面问题的表单操作,

php - Stripe 使多个客户具有相同的电子邮件地址

php - CodeIgniter 中的 Seo 友好 url

php - 如何在 PHP 文件执行期间调用 javascript 文件。

javascript - 通过 JQuery 运行外部 php mysql 查询时出错

php - 如何打印数组索引?