【问题标题】:PHP interactive shell and NO newline with echoPHP 交互式 shell 和没有回显的换行符
【发布时间】:2014-05-19 14:29:51
【问题描述】:

我已经使用 --with-readline 选项编译了 PHP,并获得了交互式 shell,但我遇到了一个烦人的问题,当我回显某些内容时,回显不会打印我的意思是换行符:

****@****-PC ~ $ php -a
Interactive mode enabled

php > echo 1+2;
3php > echo "Hello World!";
Hello World!php >

问题出在哪里?我该如何解决? 因为观看here 它会打印一个换行符。

【问题讨论】:

  • 字符串后面没有换行符
  • 这是某些 PHP 版本 (bugs.php.net/bug.php?id=55496) 的已知错误。如果你运行php -v,你运行的是什么版本?

标签: php shell


【解决方案1】:

如果你想强制交互模式总是输出换行符,你可以在启动时这样声明:

php -dcli.prompt="\nphp> " -a

(或者更确切地说改编php.ini)

【讨论】:

  • -dcli.prompt 到底是做什么的?
  • @HaRsH - 如果 PHP 版本有问题并且不会自动强制提示换行,这是一种解决方法。作为记录,OP 正在描述一个不是预期行为的错误,并且交互式 shell 并非旨在强制用户为任何单行输出手动添加换行符。
  • 如何编辑php.inidcli.prompt="\nphp> " -a?我试试locate php.ini。我应该试试/etc/php5/php.ini吗?
猜你喜欢
  • 2014-01-04
  • 2011-11-01
  • 2013-04-16
  • 2012-07-03
  • 2011-08-13
  • 2011-03-04
  • 1970-01-01
  • 2021-07-11
相关资源
最近更新 更多