跳过正文
  1. Posts/

php扩展模块的安装

·344 字·2 分钟·
Kubehan
作者
Kubehan
云原生知识栈:深度解析容器技术、Kubernetes、Istio、DevOps 实践、Prometheus 监控、Envoy 代理、Golang 开发及云原生架构与微服务趋势的专业博客

PHP的扩展模块安装

<p style="margin-left:0pt;">
  模块安装总则:
</p>

<ol>
  <li>
    进入到ext/目录下对应的模块
  </li>
  <li>
    执行/usr/local/php/bin/phpize 也就是执行一遍phpize生成编译文件
  </li>
  <li>
    ./configure <span style="color:#222222;">--with-php-config=/opt/php5.</span><span style="color:#222222;">6.27</span><span style="color:#222222;">/bin/php-config</span>
  </li>
  <li>
    <span style="color:#222222;">M</span><span style="color:#222222;">ake && make install</span>
  </li>
</ol>

<p style="margin-left:0pt;">
  <span style="color:#4f4f4f;">php自身提供了很多扩展,比如curl,gmp, mbstring等等。我们在编译安装php时未必安装了所有扩展。那么在安装完php后,如果想单独安装某个php自身的扩展怎么办呢?</span>
</p>

<p style="margin-left:0pt;">
  <strong><span style="color:#ff0000;"><strong>php版本5.</strong></span></strong><strong><span style="color:#ff0000;"><strong>6.27</strong></span></strong>
</p>

<p style="margin-left:0pt;">
  <span style="color:#222222;">单独安装gd拓展模块需要cd 到 php-5.</span><span style="color:#222222;">6.27</span><span style="color:#222222;">/ext/gd</span>
</p>

<p style="margin-left:0pt;">
  <span style="color:#222222;">执行 phpize 生成编译文件,如果系统没有引入phpize,这个文件在PHP安装目录下的bin中</span>
</p>

<p style="margin-left:0pt;">
  <span style="color:#222222;">在这里一定要先执行make clean,这次安装了8台服务器,没有先执行make clean的100%没有安装成功,都没有添加到freetype support</span>
</p>

<p style="margin-left:0pt;">
  <span style="color:#222222;">./configure --with-php-config=/opt/php5.</span><span style="color:#222222;">6.27</span><span style="color:#222222;">/bin/php-config --with-jpeg-dir --with-png-dir --with-freetype-dir --with-zlib-dir --with-gd</span>
</p>

<p style="margin-left:0pt;">
   
</p>

<p style="margin-left:0pt;">
  <span style="color:#4f4f4f;">一般情况,如果你正确的指定了php-config或者你的机器只有一个php版本,so都会被正确安装到相应php的extension_dir。如果执行make install后,extension_dir目录下没有相应的so,可以手动将第5步中生成的so文件cp过去</span>
</p>

<p style="margin-left:0pt;">
  <strong><span style="color:#222222;"><strong>确认freetype 2 在编译中已被添加</strong></span></strong>
</p>

<p style="margin-left:0pt;">
  <span style="color:#222222;">make && make install</span>
</p>

<p style="margin-left:0pt;">
   
</p>

<p style="margin-left:0pt;">
  PHP安装扩展模块
</p>

<p style="margin-left:0pt;">
  <span style="color:#1f2c33;">PHP bcmath扩展(PHP配置参数--enable-bcmath)。</span>
</p>

<p style="margin-left:0pt;">
   
</p>

<p style="margin-left:0pt;">
  安装
</p>

<p style="margin-left:0pt;">
  BC数学函数仅在 PHP 编译时配置了 --enable-bcmath 时可用。
</p>

<p style="margin-left:0pt;">
   
</p>

<p style="margin-left:0pt;">
  PHP 的 Windows 版本已内建对此扩展的支持。
</p>

<p style="margin-left:0pt;">
   
</p>

<p style="margin-left:0pt;">
  PHP 的 Linux 版本,则需要手动安装bcmath扩展。
</p>

<p style="margin-left:0pt;">
   
</p>

<p style="margin-left:0pt;">
  在PHP的源码包中,默认就包含bcmath扩展的安装文件,只需手动安装一下即可。
</p>

<p style="margin-left:0pt;">
   
</p>

<p style="margin-left:0pt;">
  cd /soft/php-5.5.38/ext/bcmath
</p>

<p style="margin-left:0pt;">
  // 进入PHP的源码包目录中的bcmatch扩展目录
</p>

<p style="margin-left:0pt;">
   
</p>

<p style="margin-left:0pt;">
  /usr/local/php-5.5.38/bin/phpize
</p>

<p style="margin-left:0pt;">
  // 执行phpize命令
</p>

<p style="margin-left:0pt;">
   
</p>

<p style="margin-left:0pt;">
  ./configure --with-php-config=/usr/local/php-5.5.38/bin/php-config
</p>

<p style="margin-left:0pt;">
  // 配置
</p>

<p style="margin-left:0pt;">
   
</p>

<p style="margin-left:0pt;">
  make && make install
</p>

<p style="margin-left:0pt;">
  // 编译和安装
</p>

<p style="margin-left:0pt;">
  安装完成后,可以得到bcmath.so文件,将该文件拷贝至php的扩展存放目录。
</p>

<p style="margin-left:0pt;">
  然后,修改php的配置文件php.ini,加入如下的代码:
</p>

<p style="margin-left:0pt;">
   
</p>

<p style="margin-left:0pt;">
  extension=bcmath.so
</p>

<p style="margin-left:0pt;">
  最后,重启php服务即可。
</p>

<p style="margin-left:0pt;">
   
</p></p>
  • 点赞
  • 收藏
  • 分享
  •       <br /> <!--打赏结束-->
        </p>
        
        <li class="tool-item tool-more">
          <p>
            <svg t="1575545411852" class="icon" viewbox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5717" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs>
          </p>
          
          <p>
            </defs><path d="M179.176 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5718"></path><path d="M509.684 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5719"></path><path d="M846.175 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5720"></path></svg>
          </p>
          
          <ul class="more-box">
            <li class="item">
              文章举报
            </li>
          </ul>
        </li>
      </ul>
    </div>
    
<div class="middle-message">
  <div class="title">
    <span class="tit">千古若昙花</span>
  </div>
  
  <div class="text">
    <span>发布了14 篇原创文章</span> · <span>获赞 3</span> · <span>访问量 5493</span>
  </div></p>
</div>

<div class="right-message">
  私信</p> 
  
  <p>
    关注
  </p>
</div></p>