为啥 echo 语句没有在我的 PHP 代码中生成任何内容?

Posted

技术标签:

【中文标题】为啥 echo 语句没有在我的 PHP 代码中生成任何内容?【英文标题】:Why is echo statement not generating anything in my PHP code?为什么 echo 语句没有在我的 PHP 代码中生成任何内容? 【发布时间】:2016-12-02 21:26:10 【问题描述】:

在我的代码中,我让 javacript 在客户端获取本地时间并将其发布到服务器。在 post 事件中,我在 php 中有以下代码。

<?php 
......
if(isset($_POST["dateStr"]) && strlen(trim($_POST["dateStr"])) > 0)

    ....
    if($fh = fopen("files/$fileID",'w'))
    
        fwrite($fh, '<span style="color:yellow">Successfully created file!</span>');
        echo '<span style="color:yellow">Successfully created file!</span>';
        fclose($fh);
    
    else
        echo "<span style=\"color:yellow\">Error creating file!</span>";

?> 

文件已成功创建,并且在该文件中(为了调试,为了查看 echo 语句生成了什么,我在该文件中转储了相同的字符串)我也可以使用以下语句。

<span style="color:yellow">Successfully created file!</span>

但是,屏幕上没有显示“成功创建文件”消息。这意味着 echo 语句不起作用。我做错了什么?

【问题讨论】:

试试file_put_contents($fh, '&lt;span style="color:yellow"&gt;Successfully created file!&lt;/span&gt;'), FILE_APPEND | LOCK_EX); 您如何通过 ajax 将其发布到服务器? 在执行后查看你的 html 源代码,它揭示了什么?也使用 var_dump;结果是什么?如果它出现(在源代码中),那么这是一个 CSS 问题。也看看你的控制台。 @pythonic 如果不处理答案,则不会显示。但我很确定你可以在浏览器开发控制台中看到它。 @pythonic 如果我在上面说的有任何意义,请联系我。我现在关闭这个标签,因为我没有得到任何回应。也许它一文不值,谁知道呢。 【参考方案1】:

只是一个强硬: 尝试先关闭文件。

<?php 
if(isset($_POST["dateStr"]) && strlen(trim($_POST["dateStr"])) > 0)

    ....
    if($fh = fopen("files/$fileID",'w'))
    
        fwrite($fh, '<span style="color:yellow">Successfully created file!</span>');
        fclose($fh);
        echo '<span style="color:yellow">Successfully created file!</span>';
    
    else
        echo "<span style=\"color:yellow\">Error creating file!</span>";

?> 

【讨论】:

文件仅用于调试。 Echo 语句本身不起作用。

以上是关于为啥 echo 语句没有在我的 PHP 代码中生成任何内容?的主要内容,如果未能解决你的问题,请参考以下文章

为啥 webpack 没有从我的动态导入中生成块?

这个PHP流程判断switch语句哪里出错了?为啥不执行default后面的语句

在 PHP 中生成 HTML 文档

为啥在 C# 中生成的代码使用下划线? [关闭]

写语句不能在派生类型的用户定义格式化 I/O 过程中生成新行

PHP中为啥$_SESSION语句同时用时,临时文件里有一个是空的?