Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 不支持完全回复_Php_Terminal_Laravel - Fatal编程技术网

Php 不支持完全回复

Php 不支持完全回复,php,terminal,laravel,Php,Terminal,Laravel,尝试使用artisan命令修补程序时出错。例如,我想添加一个用户。在我的终端我输入 $ php artisan tinker 但当我进入时,我得到一个警告说: Full REPL not supported. Falling back to simple shell. 这个错误可能是什么问题?是我的终端、php、权限还是其他什么 收到警告后,我可以键入以创建新用户,但不会将其保存到数据库中。我不确定REPL是什么。缺少一个或多个readlineposix和pcntl扩展。 您需要使用适当

尝试使用artisan命令修补程序时出错。例如,我想添加一个用户。在我的终端我输入

$ php artisan tinker 
但当我进入时,我得到一个警告说:

Full REPL not supported. Falling back to simple shell. 
这个错误可能是什么问题?是我的终端、php、权限还是其他什么


收到警告后,我可以键入以创建新用户,但不会将其保存到数据库中。我不确定REPL是什么。

缺少一个或多个
readline
posix
pcntl
扩展。 您需要使用适当的配置选项编译PHP以启用它

以下是说明:

  • 阅读线
  • pcntl
  • posix

请注意,posix函数在默认情况下处于启用状态。

有时在某些发行版中禁用pcntl函数,因此您必须

查找cli的
php.ini
文件

php --ini
将其编辑为
php.ini
,通常您必须这样做

sudo gedit /etc/php5/cli/php.ini

并注释以开头的行

; disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,...

您实际上不必对其全部进行注释,只需从该行中删除pcntl函数即可启用它们,但如果这是一个开发框,则可以启用所有功能。

如果您像我一样使用debian,这应该可以:

资料来源:

将以下行添加到/etc/apt/sources.list:

deb http://packages.dotdeb.org/ wheezy all
安装存储库的GPG密钥:

wget http://www.dotdeb.org/dotdeb.gpg
sudo apt-key add dotdeb.gpg
更新包索引:

sudo apt-get update
安装php5 readline deb软件包:

sudo apt-get install php5-readline

我个人使用MAMP,而且CLI也依赖于MAMP版本的PHP。当我遇到这个问题时,我发现红线和PCNTL扩展不是MAMP PHP发行版的一部分

我写了一篇关于如何解决这个问题的文章,并提供了一个链接来下载我必须从源代码处编译的两个扩展


Artisan用作复制品。您之所以会出现错误,是因为Boris依赖于需要安装的一些扩展—请检查,因此如果您没有安装这些扩展,artisan将退回到simple shell。因此,如果你想获得完整的REPL支持,首先确保安装必要的扩展。你是在windows上吗?这就是为什么。boris是在默认情况下为laravel 4.1安装的。请参阅最后一篇文章我在使用mac os Maverici。我在Debian 7上得到了这一点。我不明白我可能会缺少哪些软件包,似乎我已经具备了它列出的所有要求。对于其他在OS X上使用Macports的人来说,我安装了
php54 pcntl
php54 posix
,让Boris在Mavericks上工作。在Centos 6.5上,这些都是由“php cli”和“php进程”提供的在我的Ubuntu系统中,我可以直接安装它:
sudo apt get install php5 readline
sudo apt-get install php5-readline