且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

XAMPP上的Php-intl安装

更新时间:2023-02-23 16:54:19

p>以下步骤帮助我,如果你使用的是OSX



http://www.phpzce.com/blog/view/15/installing-intl-package-on- your-mac-with-xampp


  1. 检查已设置的php路径

      root $:which php 


  2. 如果您在mac上使用xampp,应该是

      / Applications / XAMPP / xamppfiles / bin / php 

    但如果

      / usr / bin / php 

    您需要更改OSx php

      root $:PATH =/ Applications / XAMPP / xamppfiles / bin:$ {PATH}


  3. 安装icu4c

      root $:brew install icu4c 


  4. 通过PECL安装Intl

      root $:sudo pecl update-channels 
    root $:sudo pecl install intl


  5. 您可以检查Intl是否已成功安装

      root $ :php -m | grep intl #should return'intl'


完成



====================================

注意




  • / Applications / XAMPP / xamppfiles / etc / php.ini 文件添加/取消注释 extension = intl.so 行。并重新启动Apache。感谢@pazhyn


  • 在安装intl之前,如果您尚未安装Autoconf,感谢@Digant




    • 透过 Homebrew brew install autoconf automake

    • 运行以下命令

        curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-latest.tar.gz 
      tar xzf autoconf-latest.tar.gz
      cd autoconf- *
      。 / configure --prefix = / usr / local
      make
      sudo make install
      cd ..
      rm -r autoconf- *




I need to use the extension intl on my mac with XAMPP.

So I have followed this links:

Php-intl installation on XAMPP for Mac Lion 10.8

http://lvarayut.blogspot.it/2013/09/installing-intl-extension-in-xampp.html

I restart always my apache server but isn't installed the extension. Because if I launch:

php -m | grep intl #should return 'intl'

return empty

The command that I can't launch without it is for composer and cakephp like this:

composer create-project --prefer-dist -s dev cakephp/app cakephp3

Return me this error:

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/bake dev-master requires cakephp/cakephp 3.0.x-dev -> satisfiable by cakephp/cakephp[3.0.x-dev].
    - Installation request for cakephp/bake dev-master -> satisfiable by cakephp/bake[dev-master].

So I need to solve the problem of ext-intl with the extension intl.

Can someone help me with this problem? How can I install this extension?

Thanks

These below steps helped me, Just in case if you are using OSX

Steps from http://www.phpzce.com/blog/view/15/installing-intl-package-on-your-mac-with-xampp

  1. Check which php path is set i.e.

    root$: which php
    

  2. If you are using xampp on your mac it should be

    /Applications/XAMPP/xamppfiles/bin/php 
    

    but if its

    /usr/bin/php 
    

    you need to change your OSx php

    root$: PATH="/Applications/XAMPP/xamppfiles/bin:${PATH}" 
    

  3. Install icu4c

    root$: brew install icu4c 
    

  4. Install Intl via PECL

    root$: sudo pecl update-channels 
    root$: sudo pecl install intl 
    

  5. You can check if Intl was installed successfully

    root$: php -m | grep intl #should return 'intl' 
    

Done

============================

Note:

  • From extensions list in /Applications/XAMPP/xamppfiles/etc/php.ini file Add / Uncomment extension=intl.so line. And restart Apache. Thanks @pazhyn

  • Before installing "intl" you have to install Autoconf if you have not installed it. Thanks @Digant

    • via Homebrew brew install autoconf automake or
    • by running below commands

      curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-latest.tar.gz
      tar xzf autoconf-latest.tar.gz
      cd autoconf-*
      ./configure --prefix=/usr/local
      make
      sudo make install
      cd ..
      rm -r autoconf-*