zoukankan      html  css  js  c++  java
  • Mac下使用Pecl安装PHP的Swoole扩展实践

    一、背景

    前段时间把Mac系统重装了,PHP的一些扩展都没了,昨天需要调试一个swoole开发的项目,发现命令行中的PHP是系统自带的,如果安装swoole扩展很不方便;需要自己手动去下载swoole的源码,然后去编译swoole的源码,并自己配置,整个过程非常繁琐;

    我记得之前用brew安装的PHP,再使用pecl很方便就可以安装swoole,于是我把自带的PHP卸载然后重新使用brew安装,并且安装了pecl,在通过pecl安装了swoole扩展,把这个安装过程记录下来,方便下次使用吧

    二、操作概要

    1. 卸载自带软件
    2. 重新安装软件
    3. 验证swoole扩展

    三、卸载自带软件

    之前Mac系统升级到10.15 catalina 版本,发现在卸载自带PHP的时候提示Read-only file system,网上找了一下解决方法是需要关闭系统的sip,然后才可以删除一些文件,执行的命令如下所示

    sudo mount -uw /
    

    命令执行之后,返回的信息如下图所示

    image

    在上图中可以看到命令已经执行成功,接着我们就可以删除自带的PHP,我们首先要找出自带PHP的位置,查看PHP位置命令如下所示

    which php
    

    命令执行之后,返回的信息如下图所示
    image
    在上图中可以看到返回了一个PHP的路径,我们将它删除即可,删除自带的PHP的命令如下所示

    sudo rm -rf /usr/local/bin/php
    

    命令执行之后,返回的信息如下图所示
    image
    在上图中可以看到rm命令没有提示异常,说明删除自带的PHP已经成功。

    为了防止我们之前使用brew安装过老版本的PHP,我们也尝试卸载brew安装的PHP版本,卸载brew安装的PHP老版本命令如下所示

    这一步骤不是必须的,但为了防止安装过程当中产生意外问题,所以可以的话就卸载,不卸载也可以直接跳到安装pecl步骤中

    brew uninstall php
    

    命令执行之后,返回的信息如下图所示
    image
    在上图中可以看到已经成功卸载了brew安装的PHP版本

    四、重新安装

    我们使用brew命令来安装PHP的新版本,brew本身也是需要安装的,但相信大家已经安装过了,使用brew安装php命令如下所示

    brew install php
    

    命令执行之后,返回的信息如下图所示

    image

    在上图中可以看到安装的PHP版本为7.3,也显示了PHP的安装位置,说明我们已经安装成功了。

    接下来我们安装pecl,首先需要去php的官网下载pecl的安装包,执行命令如下所示

    wget http://pear.php.net/go-pear.phar
    

    命令执行之后,返回的信息如下图所示

    image

    在上图中可以看到已经将安装包下载完成,接下来我们使用PHP执行此安装包即可,执行命令如下所示

    sudo php go-pear.phar
    

    命令执行之后,返回的信息如下图所示

    image

    在上图中可以看到pecl已经安装完成,现在我们就可以使用pecl安装swoole了,执行命令如下所示

    pecl install swoole
    

    这条命令会有一个编译的过程,执行的时间有点长,在命令执行之后,返回的信息如下图所示

    image

    在上图中可以看到已经执行成功,并且自动将swoole扩展安装到了PHP的扩展目录,并添加到了配置文件当中。

    五、验证swoole扩展

    在swoole安装完成之后,我们可以通过下面两种方式来验证安装的可用性,首先是通过查看php安装的扩展模块命令,看看是否显示了swoole,执行命令如下所示

    php -m
    

    命令执行之后,返回的信息如下图所示

    image

    在上图中可以看到返回了swoole,说明php安装了swoole模块,我们接着找一个依赖swoole的项目,我这里有一个用laravel开发的项目需要一来到swoole,启动命令如下所示

    php artisan laravels start
    

    命令执行之后,返回的信息如下图所示

    image

    在上图中可以看到显示了PHP和swoole的版本信息,到此说明我们整个安装过程已经完成了

    六、 图书推荐

    如果对笔者的实践文章较为感兴趣,可以关注笔者出版社《PHP Web安全开发实战》,现已在各大平台上架销售,封面如下图所示

    image

    作者:汤青松

    微信:songboy8888

    日期:2019-12-03

  • 相关阅读:
    大型网站技术架构(八)--网站的安全架构(转)
    大型网站技术架构(七)--网站的可扩展性架构(转)
    大型网站技术架构(六)--网站的伸缩性架构(转)
    大型网站技术架构(五)--网站高可用架构(转)
    大型网站技术架构(四)--网站的高性能架构(转)
    HTML中的空元素
    jetbrains 全家桶,Pycharm激活码,PHPStorm激活码,WebStorm激活码,Goland激活码,Clion激活码,intellij idea激活码(亲测可用)
    legend3---22、通过html,可以使php、vue、jquery、js达成完美的配合
    IlluminateDatabaseQueryException : SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes
    template cannot be keyed. Place the key on real elements instead.
  • 原文地址:https://www.cnblogs.com/tangqingsong/p/11975878.html
Copyright © 2011-2022 走看看