centos 系統中為php添加pcntl擴展的方法

  • 2016-11-24 08:51
  • PHP二次開發
  • 閱讀(1662)
  • 評論(1
  • 來源:互聯網
  • 摘要: pcntl擴展可以支持php的多線程操作(僅限linux)原本需要重新編譯PHP的后面configrue提示加上--enable-pcntl由于我的php是采用yum安裝的,所以不能采用上面的方式下面介紹一個php動態添加擴展的方式 phpize1、首先看 ...
    pcntl擴展可以支持php的多線程操作(僅限linux)

    原本需要重新編譯PHP的后面configrue提示加上--enable-pcntl

    由于我的php是采用yum安裝的,所以不能采用上面的方式

    下面介紹一個php動態添加擴展的方式 phpize

    1、首先看下 phpize命令 所在的目錄  (ps:我的目錄/usr/bin/phpize)

    如果沒有找到的話 執行安裝

    yum install php53_devel  (ps:請注意自己的版本)

    安裝完畢后。會生成phpize命令  

    2、去php.net下載相應版本的php源文件

    咱們以php-5.3.17 為例吧,解壓后,進入相應的模塊下

    cd ext/pcntl
    #先執行phpize
    /usr/bin/phpize
    ./configure --with-php-config=/usr/bin/php-config  (ps:請正確的指定php-config的目錄)
    #編譯、安裝
    make && make install

    這時候出了一個錯誤

    ./configure編譯正常,但make出錯
    error: ‘PHP_FE_END' undeclared here (not in a function)

    解決方法:

    源代碼有錯誤,進入php-5.3.17目錄

    sed -i 's|PHP_FE_END|{NULL,NULL,NULL}|' ./ext/**/*.c
    sed -i 's|ZEND_MOD_END|{NULL,NULL,NULL}|' ./ext/**/*.c

    再重新make && make install

    3、編譯完畢后會生成了一個  pcntl.so的文件。在php的model目錄里

    編輯/etc/php.ini,加入

    extension=pcntl.so

    4、重啟apache

    service httpd restart

    5、測試是否安裝成功

    <?php
      echo pcntl_fork();
    ?>

    輸出:23165

    PHP技術交流QQ群:422137578

    除非注明,文章均為 PHP二次開發 原創,轉載請注明本文地址:http://www.fujvln.live/article-2513-1.html

    相關閱讀

    發表評論

    最新評論

    引用 任務易   2016-11-24 13:47
    用不了啊。。。

    查看全部評論(1)

    用戶名:  *

    郵 箱:  *

    網 址: 注意加上“http://”哦!