成功安装并更新Sylius项目文件夹中的所有供应商后,我尝试运行此代码:
app / console sylius:install --fixtures
我收到此错误:
PHP致命错误:在C:\ wamp \ www \ sylius \ vendor \中找不到类'ResourceBundle' 第51行的symfony \ symfony \ src \ Symfony \ Component \ Locale \ Locale.php
然后我尝试了all possible solutions given here
在php中安装了intl扩展(成功运行)。然后运行此命令
php build-data.php'您的ICU版本'
在运行上述命令时,我得到了这个:
'哪个'不被识别为内部或外部命令, 可操作程序或批处理文件。 未安装命令“svn”
我想知道此问题是否还有其他解决方法。 请提前帮助和谢谢。
P.S。 - 我的系统上没有运行SVN。我正在使用icu * 46.dll
有人遇到过这个吗?
答案 0 :(得分:1)
此错误与PHP intl-extension有关。确保它已启用且您拥有最新版本。
快速测试:
<?php
var_dump(extension_loaded('intl'));
确保您的PHP文件夹在%PATH%环境变量中正确注册。
Control Panel - System - Advanced - ...
如果没有这个,ICU dll不会被PHP作为Apache模块加载 - 不会显示错误消息,但扩展名未启用。
还可以从 phpinfo()查看!不是......
php -m
...或(windows = findstr,linux / cygwin = grep)
php -i | findstr intl
检查你的php.ini中是否启用了扩展名(不知道WAMP的扩展路径,所以请调整它)
extension=php_intl.dll
我可以看到你在Windows上使用WAMP,你将需要获得扩展的预编译版本。
http://windows.php.net/download/上的包都包含ext文件夹中的php_intl.dll。
确保使用与PHP 相同的MSVC版本编译ICU。
如果使用 VC10 编译ICU并且PHP使用 VC9 编译,则会遇到问题。
尽管php -m和php -i检测到INTL,但它不会出现在phpinfo()中。