使用composer的CakePHP 3.0安装坏了吗?

时间:2014-10-24 05:45:28

标签: cakephp installation composer-php cakephp-3.0 bootstrapping

尝试拉出localhost时出现此错误。

error: Warning: require(C:\xampp\htdocs\sync\vendor\autoload.php): failed to open stream: No such file or directory in C:\xampp\htdocs\sync\config\bootstrap.php on line 23

使用composer从cakephp网站安装:http://book.cakephp.org/3.0/en/quickstart.html

每次我尝试这是我在cmd中遇到的一些错误:

C:\xampp\htdocs>php composer.phar create-project --prefer-dist -s dev cakephp/app sync
Installing cakephp/app (dev-master ebdd94ef28cd742b90fc03a5f8cca46c6306ded2)
  - Installing cakephp/app (dev-master master)
    Loading from cache

Created project in sync
Loading composer repositories with package information
Installing dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

Problem 1
- Installation request for cakephp/cakephp 3.0.*-dev -> satisfiable by cakephp/cakephp[3.0.x-dev].
- cakephp/cakephp 3.0.x-dev requires ext-intl * -> the requested PHP extension intl is missing from your system.

Problem 2
- cakephp/cakephp 3.0.x-dev requires ext-intl * -> the requested PHP extension intl is missing from your system.
- cakephp/debug_kit 3.0.x-dev requires cakephp/cakephp 3.0.*-dev -> satisfiable by cakephp/cakephp[3.0.x-dev].
- Installation request for cakephp/debug_kit 3.0.*-dev -> satisfiable by cakephp/debug_kit[3.0.x-dev].

更新:

有趣的采取。我现在已经在5台机器上安装了CakePHP 3 beta,而没有一次我再次看到这个错误。看了之后,我发现了这个(尝试了他们提供的所有解决方案都不起作用):CakePHP 3.0 installation: intl extension missing from system

解决方案

我试过了:

  • 打开/xampp/php/php.ini
  • 更改; extension = php_intl.dll到extension = php_intl.dll(删除分号)
  • 将所有/xamp/php/ic*.dll文件复制到/ xampp / apache / bin
  • 在Xampp控制面板中重启apache

由于一些奇怪的原因,在我重新启动apache几次之后,它才开始在30分钟后无处不在地工作。某些东西必须缓存或需要硬重置。

但终于做到了。 似乎我的标题对于人们来说比其他解决方案更准确。希望这有助于更多人。

1 个答案:

答案 0 :(得分:7)

不,只是读取错误!它告诉你已经出了什么问题。

  • 问题1(...)cakephp / cakephp 3.0.x-dev需要ext-intl * - > 系统中缺少所请求的PHP扩展名。
  • 问题2 - cakephp / cakephp 3.0.x-dev需要ext-intl - > 系统中缺少所请求的PHP扩展名。

安装扩展程序,问题解决了。 official documentation告诉您运行框架的必需

每当您收到错误消息时,阅读并注意其内容。这些天人们忽视它似乎是一个普遍的问题。

官方文档中的installation instructions解释了这一点,包括XAMPP和WAMP用户的说明:

  

在XAMPP和WAMP中,mcrypt和mbstring扩展都在使用   默认。在XAMPP中,包含了intl扩展,但您必须这样做   在php.ini中取消注释extension = php_intl.dll并重启服务器   通过XAMPP控制面板。在WAMP中,intl扩展名是   默认情况下“激活”但不起作用。要使它工作,你必须去   到php文件夹(默认情况下)C:\ wamp \ bin \ php \ php {version},复制全部   看起来像icu * .dll的文件并将它们粘贴到apache bin中   目录C:\ wamp \ bin \ apache \ apache {version} \ bin。然后重启全部   服务应该没问题。