【问题标题】:How to set up input stream in PHP/ PHPstorm when debugging?调试时如何在 PHP/PHPstorm 中设置输入流?
【发布时间】:2015-05-18 21:26:50
【问题描述】:

我几乎从未使用过 PHP 中的输入流,但我不得不这样做,因为网站 hackerrank.com 为 C++ 或 Java 等更多“流式”语言编写了他们的问题。我已经想出了如何处理它,但我想在 IDE 中使用调试器并“写入”输入流,以便测试我的程序。

例如一个简单的脚本是:

<?php
$stdin = fopen("php://stdin", "r");
$wordCount = trim(fgets($stdin));

for ($i = 0; $i < $wordCount; $i++) {
$array1 = str_split(trim(fgets($stdin)));
...

如何写入任何“php://stdin”?

【问题讨论】:

    标签: php io phpstorm xdebug


    【解决方案1】:

    有点晚了,而且不是最政治正确的答案,但如果你只是测试,你有两个选择:

    当您在 PHPStorm 中以脚本模式运行时,它会在 IDE 中启动一个控制台,您可以在那里复制和粘贴任何输入,调试器将正常工作。

    而第二种选择,如果不想复制粘贴,可以创建一个stdin.txt,将代码行改为

    $handle = fopen ("stdin.txt","r");
    

    在 stdin.txt 中,您可以有测试输入。请务必在完成测试后将其改回。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-04
      • 1970-01-01
      • 2015-12-23
      • 1970-01-01
      • 2014-12-03
      • 2023-03-28
      • 1970-01-01
      • 2016-04-08
      相关资源
      最近更新 更多