Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.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 Symfony 2:安装并启用intl扩展_Php_Windows_Symfony_Xampp - Fatal编程技术网

Php Symfony 2:安装并启用intl扩展

Php Symfony 2:安装并启用intl扩展,php,windows,symfony,xampp,Php,Windows,Symfony,Xampp,我正在使用适用于Windows的XAMPP,并决定试用Symfony 2 我一进入Symfony配置页面,它就建议我安装并启用intl 我试着阅读PEAR的和PECL的指南,因为我在这个主题上完全0(最近开始学习PHP),但没有任何效果 我在我的C:\xamp\php\ext中找到了php\u intl.dll。php.ini的扩展名\u dir=设置为“C:\xampp\php\ext”。我只是缺少php.ini中的extension=php_intl.dll,所以我添加了它 不幸的是,它不起

我正在使用适用于Windows的
XAMPP
,并决定试用
Symfony 2

我一进入
Symfony配置
页面,它就建议我安装并启用intl

我试着阅读PEAR的和PECL的指南,因为我在这个主题上完全0(最近开始学习
PHP
),但没有任何效果

我在我的
C:\xamp\php\ext
中找到了
php\u intl.dll
php.ini
扩展名\u dir=
设置为
“C:\xampp\php\ext”
。我只是缺少
php.ini
中的
extension=php_intl.dll
,所以我添加了它

不幸的是,它不起作用,
Symfony
一直向我询问intl

从PHP版本5.3.0开始,此扩展与PHP捆绑在一起。 或者,此扩展的PECL版本可与所有 PHP版本大于5.2.0(建议使用5.2.4+版本)


另外,请阅读我对上述帖子的评论

每当您对
php.ini
进行更改时,请记住重新启动
Apache
。否则,更改将不会生效。您可以在
XAMPP控制面板中通过单击
Apache
模块行中的
stop/start
按钮来执行此操作。

遵循以下步骤:

  • 从C:\wamp\bin\php\php5.5.12复制以“icu”开头的所有文件名,并粘贴到C:\wamp\bin\apache\apache2.4.9\bin(我正在使用wamp。请自己为XAMP找到它。)
  • 你可以试试。没有什么是有害的。如果你觉得这些东西不起作用,你可以删除它们。我相信它会100%为你工作

  • 取消注释C:\wamp\bin\apache\apache2.4.9\bin\php.ini上的以下行

    extension=php_intl.dll
    
  • 它将起作用。

    对于Linux用户: 安装php5 intl使它适合我

    sudo apt-get install php5-intl
    
    可在此处找到:

    要在Xampp中激活此扩展,只需编辑php.ini(即在C:\Xampp\php目录中)并删除分号以取消对此行的注释:

    ;extension=php_intl.dll
    
    最后别忘了重新启动Apache

    对于OS X用户: 1.通常,PHP会自动安装在OSX上。因此,如果您想使用XAMPP或任何apache服务器,必须将路径点更改为XAMPP。您可以使用以下命令检查路径:

    $ which php
    
    $ PATH="/Applications/XAMPP/xamppfiles/bin:${PATH}"
    
    (不要复制$sign,这意味着您应该在终端中键入它,而不是php)

    您应该得到:
    /Applications/XAMPP/xamppfiles/bin/php

    如果没有,您将获得
    /usr/bin/php

    这是OSX的php。因此,您必须使用以下方法将其更改为XAMPP的php:

    $ which php
    
    $ PATH="/Applications/XAMPP/xamppfiles/bin:${PATH}"
    
    2.运行此命令下载、解包、编译和安装ICU(您可以根据需要选择不同的版本):

    然后运行:

    $ sudo pecl install intl
    
    并指定可以找到ICU库和头的位置[默认]:

    /usr/local
    
    请注意安装报告中的信息:

    You should add "extension=intl.so" to php.ini
    
    不要忘记重新启动Apache并检查版本:

    <?php
    if (extension_loaded('intl')) {
        echo "PHP: " . PHP_VERSION . "<br>\n";
        echo "ICU: " . INTL_ICU_VERSION . "<br>\n";
    } else {
        die('OOPS! The intl extension is not enabled!');
    }
    

    要解决这个问题,请转到“c:\xampp\php\php.ini”,在编辑器中打开它,搜索动态扩展,然后向下搜索;extension=php_intl.dll并启用它(删除;变得类似)extension=php_intl.dll之后保存文件php.ini并重新启动本地主机

    trued./ext以获得扩展目录?它是哪一个php版本?刚刚是。这没用。它告诉我它无法加载php中列出的第一个未注释的扩展名
    php_bz2.dll
    。它是原始xamp还是对php和apache如何相互使用做了一些修改?我只是运行了
    XAMPP
    的安装文件,按照所有说明进行操作,没有修改任何内容,PHP5.4自带了一个内置的Web服务器,也许它就是这样工作的。如果没有解决方案,请尝试重新安装xamp或调整其配置。我做了所有这些事情,但它不起作用。谢谢这个答案不是针对Windows,而是针对linux。请编辑您的答案,说明这仅适用于linux。