91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP擴展開發之整型參數傳遞

發布時間:2020-06-27 14:15:03 來源:網絡 閱讀:807 作者:abc965432 欄目:web開發
 實現一個加法函數,傳入2個參數,計算相加的和:
 
 1.創建一個新的擴展
	./ext_skel --extname=hello
	
  2.vi config.m4   去掉以下3行行首的dnl
          PHP_ARG_ENABLE(hello, whether to enable strive support,
          Make sure that the comment is aligned:
          [  --enable-hello           Enable strive support]) 
            
 3,編寫代碼 
	1.vi hello.c
	
	2.#添加下面的代碼
    	    ZEND_BEGIN_ARG_INFO(addition_arginfo, 0)
            ZEND_ARG_INFO(0, num1)
            ZEND_ARG_INFO(0, num2)
    	    ZEND_END_ARG_INFO()

	PHP_FUNCTION(addition) {
    	    long num1,num2;
    	    if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ll", &num1, &num2) == FAILURE) {
        	   return;
    	    }
    	    RETURN_LONG(num1+num2);
	 }
	
	
	3.在數組中添加函數名:
	  const zend_function_entry  hello_functions[] = {
	          PHP_FE(addition, NULL)           /* addition function */
	}
	
	
	
解釋:
    這里創建的拓展名為hello,所以需要編輯hello.c文件,在里面加上相應的函數。這里加上了addition
    函數,主要功能是實現兩個參數的相加。定義了2個參數,num1與num2。
    ZEND_BEGIN_ARG_INFO  :開始參數塊定義
    ZEND_END_ARG_INFO      :結束參數塊定義
    ZEND_ARG_INFO      :聲明普通參數 
    PHP_FUNCTION(addition) :這里是為擴展添加具體的函數,函數名為(addition)
    函數內定義了兩個long類型的變量,這里定義的變量與上面參數塊中定義的對應。 
    RETURN_LONG:表示返回一個long類型的值,
    
    
 4.編譯安裝擴展,
       phpize
       ./configure --with-php-config=php_conf_dir
       make && make install
       vi php.ini  
       extension=strive.so       
       reload php-fpm 
 
 5.測試addition函數是否可用:
             php -r 'echo addition(10,40);' 
         
    
    
    	
		


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

眉山市| 蒙阴县| 贵南县| 临高县| 衡南县| 鄂托克前旗| 东莞市| 金坛市| 方山县| 华坪县| 祁东县| 都兰县| 宁陵县| 西宁市| 靖西县| 河曲县| 阳春市| 正镶白旗| 琼海市| 屏东县| 凌海市| 汤阴县| 丽江市| 庆城县| 威宁| 桃园县| 离岛区| 日土县| 雅江县| 加查县| 长顺县| 丰都县| 新化县| 兴化市| 额敏县| 恩施市| 绥棱县| 尼木县| 亳州市| 南郑县| 克什克腾旗|