一文精通php多版本管理工具phpbrew使用教程

2024-03-01 0 1,027
目录
  • phpbrew构建和安装多个 PHP 版本
    • phpbrew 的功能包括
  • 要求
    • 安装
      • 设置
        • 设置查找前缀
          • 基本用法
            • 开始构建自己的 PHP
              • 变体
                • 额外的配置选项
                  • 使用和切换
                    • 列出已安装的 PHP
                      • 扩展安装程序
                        • 安装扩展 – 最简单的方式
                        • 使用稳定性安装扩展
                        • 展示扩展配置选项
                        • 使用自定义选项安装扩展
                        • 从 GitHub 安装扩展
                        • 使用特定下载工具安装扩展
                        • 启用扩展
                      • 配置当前 PHP 版本的 php.ini
                        • 升级 phpbrew
                          • 已安装的 PHP(s)
                            • 快速在目录之间切换的命令
                              • PHP FPM
                                • 启用版本信息提示
                                  • 已知问题

                                    phpbrew构建和安装多个 PHP 版本

                                    phpbrew 是一个工具,可以在 $HOME 目录中构建和安装多个 PHP 版本。

                                    phpbrew 的功能包括

                                    • 将配置选项简化为变体,不再担心路径问题。

                                    • 使用不同的变体构建 PHP,如 PDO、mysql、sqlite、debug 等。

                                    • 编译 Apache PHP 模块,并按不同版本分开。

                                    • 在个人目录中构建和安装 PHP,无需 root 权限。

                                    • 轻松切换版本,与 bash/zsh shell 集成。

                                    • 自动功能检测。

                                    • 轻松在当前环境中安装和启用 PHP 扩展。

                                    • 在系统范围内安装多个 PHP。

                                    • 针对 HomeBrew 和 MacPorts 的路径检测优化。

                                    一文精通php多版本管理工具phpbrew使用教程

                                    要求

                                    请查看Requirement[1]在开始之前。你需要安装一些用于构建 PHP 的开发包。

                                    安装

                                    只需下载它:

                                    curl -L -O https://github.com/phpbrew/phpbrew/releases/latest/download/phpbrew.phar
                                    chmod +x phpbrew.phar

                                    然后,你可以将其安装到 bin 文件夹中:

                                    sudo mv phpbrew.phar /usr/local/bin/phpbrew

                                    确保在你的$PATH环境变量中有/usr/local/bin。

                                    设置

                                    初始化一个用于你的 shell 环境的 bash 脚本:

                                    phpbrew init

                                    将以下行添加到你的 .bashrc 或 .zshrc 文件:

                                    [[ -e ~/.phpbrew/bashrc ]] && source ~/.phpbrew/bashrc

                                    设置查找前缀

                                    你可以设置你首选的用于查找库的默认前缀,可用选项有 macports、homebrew、debian、ubuntu 或自定义路径:

                                    对于 Homebrew 用户:

                                    phpbrew lookup-prefix homebrew

                                    对于 Macports 用户:

                                    phpbrew lookup-prefix macports

                                    基本用法

                                    列出已知版本:

                                    $ phpbrew known
                                    7.0: 7.0.3, 7.0.2, 7.0.1, 7.0.0 …
                                    5.6: 5.6.18, 5.6.17, 5.6.16, 5.6.15, 5.6.14, 5.6.13, 5.6.12, 5.6.11 …
                                    5.5: 5.5.32, 5.5.31, 5.5.30, 5.5.29, 5.5.28, 5.5.27, 5.5.26, 5.5.25 …
                                    5.4: 5.4.45, 5.4.44, 5.4.43, 5.4.42, 5.4.41, 5.4.40, 5.4.39, 5.4.38 …
                                    5.3: 5.3.29, 5.3.28 …

                                    显示更多次要版本:

                                    phpbrew known –more

                                    更新发布信息:

                                    phpbrew update

                                    获取旧版本(低于 5.4)

                                    请注意,我们不保证可以成功构建官方不支持的 PHP 版本,请不要报告有关旧版本的问题,这些问题将不会修复。

                                    phpbrew update –old

                                    列出已知的旧版本(低于 5.4)

                                    phpbrew known –old

                                    开始构建自己的 PHP

                                    使用默认变体构建和安装 PHP:

                                    phpbrew install 5.4.0 +default

                                    这里建议使用默认变体集,其中包括最常用的变体。如果你需要进行最小安装,只需删除默认变体集。

                                    你可以通过传递-j或–jobs选项启用并行编译,以下是一个示例:

                                    phpbrew install -j $(nproc) 5.4.0 +default

                                    带有测试:

                                    phpbrew install –test 5.4.0

                                    带有调试信息:

                                    phpbrew -d install –test 5.4.0

                                    安装旧版本(低于 5.3):

                                    phpbrew install –old 5.2.13

                                    安装下一个(不稳定)版本:

                                    phpbrew install next as php-7.1.0

                                    从 GitHub 标签安装:

                                    phpbrew install github:php/php-src@PHP-7.0 as php-7.0.0

                                    清理构建目录:

                                    phpbrew clean php-5.4.0

                                    变体

                                    PHPBrew 为你整理了配置选项,你可以简单地指定变体名称,phpbrew 将检测包含路径和用于配置的构建选项。

                                    PHPBrew 提供了默认变体和一些虚拟变体。默认变体包括最常用的变体,而虚拟变体定义了一个变体集,你可以使用一个虚拟变体一次性启用多个变体。

                                    要查看这些变体中包含了什么,只需运行variants子命令来列出这些变体:

                                    $ phpbrew variants
                                    Variants:
                                    all, apxs2, bcmath, bz2, calendar, cgi, cli, ctype, dba, debug, dom, embed,
                                    exif, fileinfo, filter, fpm, ftp, gcov, gd, gettext, hash, iconv, icu,
                                    imap, intl, ipc, ipv6, json, kerberos, mbregex, mbstring, mcrypt, mhash,
                                    mysql, openssl, pcntl, pcre, pdo, pgsql, phar, posix, readline, session,
                                    soap, sockets, sqlite, tidy, tokenizer, xml_all, xmlrpc, zip, zlib, gmp
                                    Virtual variants:
                                    dbs: sqlite, mysql, pgsql, pdo
                                    mb: mbstring, mbregex
                                    neutral:
                                    default: filter, dom, bcmath, ctype, mhash, fileinfo, pdo, posix, ipc,
                                    pcntl, bz2, zip, cli, json, mbstring, mbregex, calendar, sockets, readline,
                                    xml_all

                                    使用变体构建 PHP 的示例:

                                    phpbrew install 5.3.10 +default
                                    phpbrew install 5.3.10 +mysql +pdo
                                    phpbrew install 5.3.10 +mysql +pdo +apxs2
                                    phpbrew install 5.3.10 +mysql +pdo +apxs2=/usr/bin/apxs2

                                    要启用一个变体,只需在变体名称前加上前缀+,例如:

                                    +mysql

                                    要禁用一个变体,只需在变体名称前加上前缀-。

                                    例如,如果我们希望使用默认选项和数据库支持(mysql、sqlite、postgresql)构建 PHP,你可以简单地运行:

                                    phpbrew install 5.4.5 +default+dbs

                                    你还可以使用额外的变体构建 PHP:

                                    phpbrew install 5.3.10 +mysql+sqlite+cgi
                                    phpbrew install 5.3.10 +mysql+debug+pgsql +apxs2
                                    phpbrew install 5.3.10 +pdo +mysql +pgsql +apxs2=/usr/bin/apxs2

                                    要构建带有 pgsql(PostgreSQL)扩展的 PHP:

                                    phpbrew install 5.4.1 +pgsql+pdo

                                    或在Mac OS X上使用 postgresql 基本目录构建 pgsql 扩展:

                                    phpbrew install 5.4.1 +pdo+pgsql=/opt/local/lib/postgresql91/bin

                                    pgsql 路径是pg_config的位置,你可以在/opt/local/lib/postgresql91/bin找到pg_config。如果要使用中性编译选项构建 PHP,你可以指定中性虚拟变体,这意味着 phpbrew 不会添加任何额外的编译选项,包括–disable-all。但是,一些选项(例如–enable-libxml)仍然会自动添加以支持 pear 安装。你可以使用中性构建 PHP:

                                    phpbrew install 5.4.1 +neutral

                                    有关更多详细信息,请查看PHPBrew Cookbook[2]。

                                    额外的配置选项

                                    要传递额外的配置参数,可以这样做:

                                    phpbrew install 5.3.10 +mysql +sqlite — \\
                                    –enable-ftp –apxs2=/opt/local/apache2/bin/apxs

                                    使用和切换

                                    使用(临时切换版本):

                                    phpbrew use 5.4.22

                                    切换 PHP 版本(切换默认版本):

                                    phpbrew switch 5.4.18

                                    关闭:

                                    phpbrew off

                                    如果启用了 Apache PHP 模块,请记得注释或删除这些设置。

                                    $ sudo vim /etc/httpd/conf/httpd.conf
                                    # LoadModule php5_module /usr/lib/httpd/modules/libphp5.3.21.so
                                    # LoadModule php5_module /usr/lib/httpd/modules/libphp5.3.20.so

                                    列出已安装的 PHP

                                    phpbrew list

                                    扩展安装程序

                                    您还可以轻松地安装 PHP 扩展,无论是与 PHP 源代码一起提供的扩展,还是来自PECL。

                                    如果在 PHP 源代码中找到扩展目录,PHPBrew 将自动切换到 PHP 源目录并安装扩展。

                                    如果在 PHP 源代码中未找到扩展目录,PHPBrew 将从 PECL http://pecl.php.net 获取扩展包。

                                    PHPBrew 还创建扩展配置以启用安装的扩展,因此您无需手动编写配置文件即可启用它。扩展配置目录在:

                                    ~/.phpbrew/php/php-{version}/var/db

                                    安装扩展 – 最简单的方式

                                    在安装任何 PHP 扩展之前,应设置当前运行的 PHP 版本:

                                    phpbrew use php-5.5.6

                                    然后运行ext install来安装扩展:

                                    phpbrew ext install apcu
                                    phpbrew ext install memcache

                                    使用稳定性安装扩展

                                    使用稳定性标签安装扩展:

                                    phpbrew ext install xdebug stable
                                    phpbrew ext install xdebug latest
                                    phpbrew ext install xdebug beta

                                    使用版本名称安装扩展:

                                    phpbrew ext install xdebug 2.0.1

                                    展示扩展配置选项

                                    要查看是否有一些构建扩展的配置选项,可以使用ext show命令。请注意,show命令仅适用于内置扩展:

                                    phpbrew ext show apcu

                                    使用自定义选项安装扩展

                                    phpbrew ext install yaml — –with-yaml=/opt/local

                                    从 GitHub 安装扩展

                                    特殊前缀github:告诉 phpbrew 从 php-memcached-dev/phpmemcached 存储库获取扩展并切换到 php7 分支:

                                    phpbrew ext install github:php-memcached-dev/php-memcached php7 — –disable-memcached-sasl

                                    使用特定下载工具安装扩展

                                    目前,phpbrew 支持 4 种不同的下载工具实现:

                                    • php_curl- 使用内置的 php curl 扩展下载文件。

                                    • php_stream- 使用内置的 php 流包装器下载文件。

                                    • curl

                                    • wget

                                    可以使用你喜欢的下载工具替换默认的下载工具:

                                    phpbrew ext install –downloader php_curl apcu

                                    基于 curl 的 php 扩展下载工具支持 User-Agent 和代理设置,因此如果遇到一些网络问题,你可以这样做:

                                    phpbrew ext install –download php_curl –http-proxy=… –http-proxy-auth=… apcu

                                    启用扩展

                                    你还可以通过 PECL 安装扩展并手动启用它:

                                    pecl install mongo
                                    phpbrew ext enable mongo

                                    ext enable命令允许你创建一个配置文件{当前 php base}/var/db/{extension name}.ini来启用该扩展。

                                    配置当前 PHP 版本的 php.ini

                                    只需运行:

                                    phpbrew config

                                    你可以将 EDITOR 环境变量指定为你喜欢的编辑器:

                                    export EDITOR=vim

                                    然后运行:

                                    phpbrew config

                                    升级 phpbrew

                                    要升级 phpbrew,只需运行 self-update 命令,此命令允许你安装来自 GitHub 主分支的最新版本:

                                    phpbrew self-update

                                    已安装的 PHP(s)

                                    已安装的 PHP 位于 ~/.phpbrew/php,例如,PHP 5.4.20 位于:

                                    ~/.phpbrew/php/5.4.20/bin/php

                                    你应该将配置文件放在:

                                    ~/.phpbrew/php/5.4.20/etc/php.ini

                                    扩展配置文件应放在:

                                    ~/.phpbrew/php/5.4.20/var/db
                                    ~/.phpbrew/php/5.4.20/var/db/xdebug.ini
                                    ~/.phpbrew/php/5.4.20/var/db/apc.ini
                                    ~/.phpbrew/php/5.4.20/var/db/memcache.ini
                                    … etc

                                    快速在目录之间切换的命令

                                    切换到 PHP 构建目录:

                                    phpbrew build-dir

                                    切换到 PHP 分发目录:

                                    phpbrew dist-dir

                                    切换到 PHP etc 目录:

                                    phpbrew etc-dir

                                    切换到 PHP var 目录:

                                    phpbrew var-dir

                                    PHP FPM

                                    phpbrew 还提供了一些有用的 FPM 管理子命令。要使用它们,请记住在构建自己的 PHP 时启用 +fpm 变体。

                                    启动 php-fpm,只需键入:

                                    phpbrew fpm start

                                    停止 php-fpm,输入:

                                    phpbrew fpm stop

                                    显示 php-fpm 模块:

                                    phpbrew fpm module

                                    测试 php-fpm 配置:

                                    phpbrew fpm test

                                    编辑 php-fpm 配置:

                                    phpbrew fpm config

                                    已安装的 php-fpm 位于 ~/.phpbrew/php/php-*/sbin。

                                    对应的 php-fpm.conf 位于 ~/.phpbrew/php/php-*/etc/php-fpm.conf.default,你可以将默认配置文件复制到所需的位置。例如,

                                    cp -v ~/.phpbrew/php/php-*/etc/php-fpm.conf.default
                                    ~/.phpbrew/php/php-*/etc/php-fpm.conf

                                    php-fpm –php-ini {php config file} –fpm-config {fpm config file}

                                    启用版本信息提示

                                    要在 shell 提示中添加 PHP 版本信息,可以使用 "PHPBREW_SET_PROMPT=1" 变量。

                                    默认情况下是 "PHPBREW_SET_PROMPT=0"(禁用)。要启用它,可以将此行添加到你的 ~/.bashrc 文件,并将此行放在 source ~/.phpbrew/bashrc 之前。

                                    export PHPBREW_SET_PROMPT=1

                                    要在提示中嵌入版本信息,可以使用 phpbrew_current_php_version shell 函数,该函数在 .phpbrew/bashrc 中定义。并且你可以在你的 PS1 变量中设置版本信息,例如:

                                    PS1=\” \\$(phpbrew_current_php_version) \\$ \”

                                    已知问题

                                    对于 PHP-5.3+ 版本,“在 OS X 上构建 intl 64 位失败” https://bugs.php.net/bug.php?id=48795

                                    要使用 GD 扩展构建 PHP,你需要指定你的 libpng 目录和 libjpeg 目录,例如:

                                    phpbrew install php-5.4.10 +default +mysql +intl +gettext +apxs2=/usr/bin/apxs2 \\
                                    — –with-libdir=lib/x86_64-linux-gnu \\
                                    –with-gd=shared \\
                                    –enable-gd-natf \\
                                    –with-jpeg-dir=/usr \\
                                    –with-png-dir=/usr

                                    参考资料

                                    [1]Requirement:https://github.com/phpbrew/phpbrew/wiki/Requirement

                                    [2]PHPBrew Cookbook:https://github.com/phpbrew/phpbrew/wiki

                                    以上就是一文精通php多版本管理工具phpbrew使用教程的详细内容,更多关于php多版本管理工具phpbrew的资料请关注悠久资源网其它相关文章!

                                    您可能感兴趣的文章:

                                    • Linux系统下多版本php共存的解决方案(超简单)
                                    • Linux系统下为Nginx安装多版本PHP
                                    • lnmp安装多版本PHP共存的方法详解
                                    • MAC下通过改apache配置文件切换php多版本的方法

                                    收藏 (0) 打赏

                                    感谢您的支持,我会继续努力的!

                                    打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
                                    点赞 (0)

                                    悠久资源 PHP 一文精通php多版本管理工具phpbrew使用教程 https://www.u-9.cn/biancheng/php/181590.html

                                    常见问题

                                    相关文章

                                    发表评论
                                    暂无评论
                                    官方客服团队

                                    为您解决烦忧 - 24小时在线 专业服务