【问题标题】:PHP interactive shell, auto echo and a new linePHP 交互式 shell、自动回显和新行
【发布时间】:2014-01-04 21:39:54
【问题描述】:

各位程序员好!

有没有办法让 PHP 的交互式 shell php -a 表现得更像 Rails 控制台或 Chrome 中的控制台?我查看了 php-command 的标志,但没有骰子。

我得到了什么:

php > $a = 0;
php > $a;
php > echo $a;
0php > 

我想要什么

php > $a = 0;
0
php > $a;
0
php > echo $a;
0
php > 

【问题讨论】:

  • Facebook's phpsh,但看起来他们原来的分叉已经不再维护了。前一阵子就奏效了。
  • 您要求的是损坏的功能。它的行为与应有的完全一样,但是如果您想要换行符 - 为什么不自己添加呢?使用printf("\n%s", $a); 代替echo $a; 来适应CLI 的使用真的不难。
  • 也许您认为它已损坏,但我认为它是一项功能。交互式shell的重点(据我所知)是关于轻松访问php,进行测试或类似的事情。试试你的课什么的。如果它按照我的建议运行,那将更加方便和易于使用。

标签: php interactive-shell


【解决方案1】:

你至少有三种可能解决这个问题:

  1. 手动将PHP_EOL添加到您所有的echoecho $a . PHP_EOL
  2. 在官方php ideas wiki 上介绍您的想法,并等待有人实施。
  3. 了解php git workflow for external contributors,创建所需的功能并将补丁发送给开发人员。

【讨论】:

    【解决方案2】:

    检查Boris,描述为“PHP 缺少REPL”。 echoprint 仍然需要手动换行,但裸表达式会被评估并打印出来:

    [1] boris> $a = 0;
    // 0
    [2] boris> $a;
    // 0
    [3] boris> echo $a;
    0[4] boris>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-16
      • 1970-01-01
      • 1970-01-01
      • 2012-07-03
      • 2021-07-11
      • 2011-03-04
      • 2011-08-13
      相关资源
      最近更新 更多