欢迎资源 ID #5

发布于 2024-12-25 15:27:47 字数 416 浏览 0 评论 0原文

读取 txt 文件的内容:

index.php:

<?php
            $handle = fopen ("php://stdin","r");
            $line = fgets($handle);
            fwrite(STDOUT, "Welcome $handle"); 
            ?>

当我尝试在命令行中 时,我不断收到此错误:cat texte.txt | php index.php

其中 texte.txt 包含一个名称。 txt 和 php 这两个文件位于同一文件夹中。我以前工作得很好,我不知道为什么这个错误出现在我的情况下。

I keep getting this error when i try to read the content of a txt file:

index.php:

<?php
            $handle = fopen ("php://stdin","r");
            $line = fgets($handle);
            fwrite(STDOUT, "Welcome $handle"); 
            ?>

in the command line i do: cat texte.txt | php index.php

where texte.txt contains a name. the two files txt and php are in the same folder. I used to work fine, i don't know why this error comes in my case.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

野心澎湃 2025-01-01 15:27:47

因为你以前输出的是$line,而不是$handle

Because you used to output $line, not $handle.

喜爱皱眉﹌ 2025-01-01 15:27:47

您将看到 PHP 的“资源”对象/变量的字符串表示形式。 fwrite $line 你应该会得到你想要的结果。

示例:

<?php
echo fopen('foo.txt', 'r');

输出:

Resource id #2

You're seeing PHP's string representation of "resource" objects/vars. fwrite the $line and you should get your desired result.

Example:

<?php
echo fopen('foo.txt', 'r');

Outputs:

Resource id #2
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文