首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

用 C 開發 PHP 擴展:基礎版完整步驟(ext_skel 到安裝測試)

     編輯:PHP 相關知識

開發環境

PHP 5.3.6 原始碼目錄:/usr/local/src/php-5.3.6,安裝路徑:/usr/local/php。

步驟

  1. 產生骨架
    cd /usr/local/src/php-5.3.6/ext
    ./ext_skel --extname=laiwenhui
  2. 修改 config.m4
    編輯 laiwenhui/config.m4,取消註解 PHP_ARG_ENABLE 區塊。
    PHP_ARG_ENABLE(laiwenhui, whether to enable laiwenhui support, [ --enable-laiwenhui Enable laiwenhui support])
  3. 撰寫程式碼
    php_laiwenhui.h 新增 PHP_FUNCTION(test);
    laiwenhui.c 於 zend_function_entry 加入 PHP_FE(test, NULL),並於檔尾實作:
    PHP_FUNCTION(test) { char *arg = "This is my first extention!"; int len; char *strg; len = spprintf(&strg, 0, "%s\n", arg); RETURN_STRINGL(strg, len, 0); }
  4. 編譯安裝
    cd /usr/local/src/php-5.3.6/ext/laiwenhui
    /usr/local/php/bin/phpize
    ./configure --with-php-config=/usr/local/php/bin/php-config
    make && make install
    產生 /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/laiwenhui.so
  5. 設定 php.ini
    extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"
    extension = laiwenhui.so
  6. 驗證
    重啟 PHP-FPM/Nginx,執行 php -m 確認載入。
    建立 test.php:<?php echo test(); 輸出 This is my first extention!
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved