php如何調用c接口無錯版_PHP教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:C#調用windows api的要點
      在.Net Framework SDK文檔中,關于調用Windows API的指示比較零散,并且其中稍全面一點的是針對Visual Basic .net講述的。本文將C#中調用API的要點匯集如下,希望給未在C#中使用過API的朋友一點幫助。另外如果安裝了Visual Studio .net的話,在C:/Program Files/Micros

       1.首先是要安裝好PHP

       

      2.進入PHP的下載解壓目錄下的ext目錄

      #cd /root/php-5.3.6/ext

      #./ext_skel --extname=hmc

       

      說明:

      ./ext_skel --extname=module_name
      module_name是你自己可以選擇的擴展模塊的名字,例如我選擇的hmc。執行工具后會自動在ext目錄下建立你選擇的module_name名字的目錄,里面已經生成了相關的代碼,這些代碼中只需要調整config.m4文件中的三行注釋就可以正常的編譯帶這個自定義擴展模塊的php了。

       

      3.修改config.m4

      可以將生成的module目錄復制到任意希望放置的地方

      進入hmc目錄

      vi config.m4

      使用文本編輯器打開config.m4文件

      根據你自己的選擇將

      dnl PHP_ARG_WITH(hmc, for hmc support,

      dnl Make sure that the comment is aligned:

      dnl [ --with-hmc Include hmc support])

      修改成

      PHP_ARG_WITH(hmc for hmc support,

      Make sure that the comment is aligned:

      [ --with-hmc Include hmc support])

      或者將

      dnl PHP_ARG_ENABLE(hmc, whether to enable hmc support,

      dnl Make sure that the comment is aligned:

      dnl [ --enable-hmc Enable hmc support])

      修改成

      PHP_ARG_ENABLE(hmc, whether to enable hmc support,

      Make sure that the comment is aligned:

      [ --enable-hmc Enable hmc support])



      一般我會選擇后者,然后保存退出。

       

      4.修改.c和.h文件代碼

      Vi hmc.c

      將文件其中的下列代碼進行修改

      /* Every user visible function must have an entry in hmc_functions[].

      */

      const zend_function_entry hmc_functions[] = {

      PHP_FE(say_hello, NULL) /* 添加著一行代碼 */

      PHP_FE(confirm_hmc_compiled, NULL) /* For testing, remove later. */

      {NULL, NULL, NULL} /* Must be the last line in hmc_functions[] */

      };



      在文件的最后添加下列代碼

      PHP_FUNCTION(say_hello)

      {

      zend_printf("hello world\n");

      }

      保存文件退出



      vi php_hmc.h

      在文件中PHP_FUNCTION(confirm_hmc_compiled);一行前面添加下面的代碼

      PHP_FUNCTION(say_hello);

      保存文件退出
       

      5.編譯安裝

      #phpize
      #./configure --enable-hmc

      #make

      #make install

      應該在php的modules目錄下有一個hmc.so文件,不同的機器位置會不一樣

      php如何調用c接口無錯版  模板無憂

      6.修改PHP配置

      編輯php.ini,把擴展加入進去:
      在[PHP]模塊下增加:
      extension = hmc.so
      重啟Httpd

      #service httpd restart

       

      7.php調用

      建立一個c.php文件在對應的www目錄下

      <?
      say_hello();
      ?>

      這時瀏覽器應該輸出:

      hello world

       

      8.調試

      可以在命令行下輸入

      #php –q c.php

      需要進入當前的www目錄下

      查看是否安裝好模塊可以用phpinfo()

      php如何調用c接口無錯版

      也可以適用php -m命令

      先用

      #which php

      找到php所在目錄,不同機器目錄不一樣

      #/usr/bin/php -m

      php如何調用c接口無錯版

       

      9.帶參數的函數

      Vi hmc.c

      修改最后的say_hello函數內容如下:

      PHP_FUNCTION(say_hello)
      {
      zval **yourname;
      if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &yourname) == FAILURE)

      {
      WRONG_PARAM_COUNT;
      }
      zend_printf("hello world, %s\n", Z_STRVAL_PP(yourname));
      }


      修改c.php為

      <?
      say_hello(“清清月兒");
      ?>

      分享:PHP更新數據庫記錄
      //更新記錄 $query=insert into chinachaodai (name,theindex)values ('公司','1'); $result=$mysqli-query($query); if($result) { echo (返回行數:.$mysqli-affected_rows); } else { echo(失敗了); } $mysqli-close();

      來源:模板無憂//所屬分類:PHP教程/更新時間:2015-02-06
      相關PHP教程