我的开发环境:
当我尝试使用php artisan tinker时 - 我的控制台给出了以下错误:
不支持REPL。回归简单的外壳
我为此搜索解决方案并找到了:
但这对我帮助不大。我知道Boris默认支持laravel 4.1。 我可能会根据这个在php.ini上做一些更改。
如果tinker命令对您不起作用,则php.ini中的disable_functions设置很可能包含所需的pcntl_()函数。在你的php.ini中的这一行之前发表评论,这应该允许修补工作。
来源:http://laravel-recipes.com/recipes/280
但是当我打开我的php.ini文件时,disable_functions除此之外什么都不包含:
disable_functions =
该指令允许您出于安全原因禁用某些类。
它接收以逗号分隔的类名列表。这个指令是 ; NOT 受安全模式是开启还是关闭的影响。
http://php.net/disable-classes
这是我的WAMP问题吗?我错过了什么!
答案 0 :(得分:1)
Boris In Tinker
php artisan tinker命令现在使用Boris REPL,如果您的系统支持它。必须安装readline>和pcntl PHP扩展才能使用此功能。如果您没有这些扩展名,请使用> 4.0中的shell。
来自Laravel文档: http://laravel.com/docs/releases
基本上,他们告诉你需要安装php55-pcntl和readline。
每次我尝试brew install php55-pcntl
时,我都会
configure: error: Cannot find openSSL's <evp.h>
尝试运行它,看看你得到了什么。
更新:使用Laravel的Homestead环境
我完全放弃了尝试在XAMPP / WAMP / MAMP风格的localhost上运行它。
如果您转到快速入门文档并向下滚动到本地开发环境:
http://laravel.com/docs/quick#local-development-environment
它实际上建议您使用Laravel的自定义家园环境:
http://laravel.com/docs/homestead
阅读文档以进行安装并报告结果。它一直很适合我。
答案 1 :(得分:1)
缺少一个或多个readline posix和pcntl扩展名。您需要使用适当的配置选项编译PHP以启用它。
以下是说明:
readline http://www.php.net/manual/en/readline.installation.php
pcntl http://www.php.net/manual/en/pcntl.installation.php
posix http://www.php.net/manual/en/posix.installation.php
请注意,默认情况下会启用posix功能。